dk.brics.xact.analysis.soot
Class ExprAnswerVisitor<Q,A>
java.lang.Object
dk.brics.xact.analysis.soot.ExprAnswerVisitor<Q,A>
- Type Parameters:
Q
- the visit method's auxillary parameter typeA
- the visit method's return type
- Direct Known Subclasses:
- Translator
public abstract class ExprAnswerVisitor<Q,A>
- extends Object
Jimple visitor pattern that takes an auxillary parameter and has a return value.
To use it, a class should extend this and override the desired case methods.
The visitor can then be applied with the applyTo(Switchable, Object)
method.
Method Summary |
A |
applyTo(Switchable sw,
Q question)
Applies the visitor to the specified Jimple object. |
A |
caseAddExpr(AddExpr v,
Q question)
|
A |
caseAndExpr(AndExpr v,
Q question)
|
A |
caseArrayRef(ArrayRef v,
Q question)
|
A |
caseCastExpr(CastExpr v,
Q question)
|
A |
caseCaughtExceptionRef(CaughtExceptionRef v,
Q question)
|
A |
caseClassConstant(ClassConstant v,
Q question)
|
A |
caseCmpExpr(CmpExpr v,
Q question)
|
A |
caseCmpgExpr(CmpgExpr v,
Q question)
|
A |
caseCmplExpr(CmplExpr v,
Q question)
|
A |
caseDivExpr(DivExpr v,
Q question)
|
A |
caseDoubleConstant(DoubleConstant v,
Q question)
|
A |
caseEqExpr(EqExpr v,
Q question)
|
A |
caseFloatConstant(FloatConstant v,
Q question)
|
A |
caseGeExpr(GeExpr v,
Q question)
|
A |
caseGtExpr(GtExpr v,
Q question)
|
A |
caseInstanceFieldRef(InstanceFieldRef v,
Q question)
|
A |
caseInstanceOfExpr(InstanceOfExpr v,
Q question)
|
A |
caseIntConstant(IntConstant v,
Q question)
|
A |
caseInterfaceInvokeExpr(InterfaceInvokeExpr v,
Q question)
|
A |
caseLeExpr(LeExpr v,
Q question)
|
A |
caseLengthExpr(LengthExpr v,
Q question)
|
A |
caseLocal(Local v,
Q question)
|
A |
caseLongConstant(LongConstant v,
Q question)
|
A |
caseLtExpr(LtExpr v,
Q question)
|
A |
caseMulExpr(MulExpr v,
Q question)
|
A |
caseNeExpr(NeExpr v,
Q question)
|
A |
caseNegExpr(NegExpr v,
Q question)
|
A |
caseNewArrayExpr(NewArrayExpr v,
Q question)
|
A |
caseNewExpr(NewExpr v,
Q question)
|
A |
caseNewMultiArrayExpr(NewMultiArrayExpr v,
Q question)
|
A |
caseNullConstant(NullConstant v,
Q question)
|
A |
caseOrExpr(OrExpr v,
Q question)
|
A |
caseParameterRef(ParameterRef v,
Q question)
|
A |
caseRemExpr(RemExpr v,
Q question)
|
A |
caseShlExpr(ShlExpr v,
Q question)
|
A |
caseShrExpr(ShrExpr v,
Q question)
|
A |
caseSpecialInvokeExpr(SpecialInvokeExpr v,
Q question)
|
A |
caseStaticFieldRef(StaticFieldRef v,
Q question)
|
A |
caseStaticInvokeExpr(StaticInvokeExpr v,
Q question)
|
A |
caseStringConstant(StringConstant v,
Q question)
|
A |
caseSubExpr(SubExpr v,
Q question)
|
A |
caseThisRef(ThisRef v,
Q question)
|
A |
caseUshrExpr(UshrExpr v,
Q question)
|
A |
caseVirtualInvokeExpr(VirtualInvokeExpr v,
Q question)
|
A |
caseXorExpr(XorExpr v,
Q question)
|
A |
defaultExpr(Object v,
Q question)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ExprAnswerVisitor
public ExprAnswerVisitor()
applyTo
public final A applyTo(Switchable sw,
Q question)
- Applies the visitor to the specified Jimple object.
- Parameters:
sw
- a Jimple object to visit.question
- argument to pass as question to the corresponding caseXXX implementation.
- Returns:
- value returned by the corresponding caseXXX implementation, or null if
the subclass did not override it.
caseAddExpr
public A caseAddExpr(AddExpr v,
Q question)
caseAndExpr
public A caseAndExpr(AndExpr v,
Q question)
caseArrayRef
public A caseArrayRef(ArrayRef v,
Q question)
caseCastExpr
public A caseCastExpr(CastExpr v,
Q question)
caseCaughtExceptionRef
public A caseCaughtExceptionRef(CaughtExceptionRef v,
Q question)
caseClassConstant
public A caseClassConstant(ClassConstant v,
Q question)
caseCmpExpr
public A caseCmpExpr(CmpExpr v,
Q question)
caseCmpgExpr
public A caseCmpgExpr(CmpgExpr v,
Q question)
caseCmplExpr
public A caseCmplExpr(CmplExpr v,
Q question)
caseDivExpr
public A caseDivExpr(DivExpr v,
Q question)
caseDoubleConstant
public A caseDoubleConstant(DoubleConstant v,
Q question)
caseEqExpr
public A caseEqExpr(EqExpr v,
Q question)
caseFloatConstant
public A caseFloatConstant(FloatConstant v,
Q question)
caseGeExpr
public A caseGeExpr(GeExpr v,
Q question)
caseGtExpr
public A caseGtExpr(GtExpr v,
Q question)
caseInstanceFieldRef
public A caseInstanceFieldRef(InstanceFieldRef v,
Q question)
caseInstanceOfExpr
public A caseInstanceOfExpr(InstanceOfExpr v,
Q question)
caseIntConstant
public A caseIntConstant(IntConstant v,
Q question)
caseInterfaceInvokeExpr
public A caseInterfaceInvokeExpr(InterfaceInvokeExpr v,
Q question)
caseLeExpr
public A caseLeExpr(LeExpr v,
Q question)
caseLengthExpr
public A caseLengthExpr(LengthExpr v,
Q question)
caseLocal
public A caseLocal(Local v,
Q question)
caseLongConstant
public A caseLongConstant(LongConstant v,
Q question)
caseLtExpr
public A caseLtExpr(LtExpr v,
Q question)
caseMulExpr
public A caseMulExpr(MulExpr v,
Q question)
caseNeExpr
public A caseNeExpr(NeExpr v,
Q question)
caseNegExpr
public A caseNegExpr(NegExpr v,
Q question)
caseNewArrayExpr
public A caseNewArrayExpr(NewArrayExpr v,
Q question)
caseNewExpr
public A caseNewExpr(NewExpr v,
Q question)
caseNewMultiArrayExpr
public A caseNewMultiArrayExpr(NewMultiArrayExpr v,
Q question)
caseNullConstant
public A caseNullConstant(NullConstant v,
Q question)
caseOrExpr
public A caseOrExpr(OrExpr v,
Q question)
caseParameterRef
public A caseParameterRef(ParameterRef v,
Q question)
caseRemExpr
public A caseRemExpr(RemExpr v,
Q question)
caseShlExpr
public A caseShlExpr(ShlExpr v,
Q question)
caseShrExpr
public A caseShrExpr(ShrExpr v,
Q question)
caseSpecialInvokeExpr
public A caseSpecialInvokeExpr(SpecialInvokeExpr v,
Q question)
caseStaticFieldRef
public A caseStaticFieldRef(StaticFieldRef v,
Q question)
caseStaticInvokeExpr
public A caseStaticInvokeExpr(StaticInvokeExpr v,
Q question)
caseStringConstant
public A caseStringConstant(StringConstant v,
Q question)
caseSubExpr
public A caseSubExpr(SubExpr v,
Q question)
caseThisRef
public A caseThisRef(ThisRef v,
Q question)
caseUshrExpr
public A caseUshrExpr(UshrExpr v,
Q question)
caseVirtualInvokeExpr
public A caseVirtualInvokeExpr(VirtualInvokeExpr v,
Q question)
caseXorExpr
public A caseXorExpr(XorExpr v,
Q question)
defaultExpr
public A defaultExpr(Object v,
Q question)
Copyright © 2005-2011 Aarhus University.