dk.brics.string.java
Class ExprAnswerVisitor<Q,A>
java.lang.Object
  
dk.brics.string.java.ExprAnswerVisitor<Q,A>
- Type Parameters:
 Q - the visit method's auxillary parameter typeA - the visit method's return type
- Direct Known Subclasses: 
 - StatementTranslatorImpl
 
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.
- Author:
 
  - Asger
 
 
| 
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 © 2003-2009 Anders Møller, Aske Simon Christensen, Asger Feldthaus.