org.siebengeisslein.pclass.expression
Class MethodInvocation

java.lang.Object
  extended by org.siebengeisslein.client.Persistent
      extended by org.siebengeisslein.pclass.expression.AbstractExpression
          extended by org.siebengeisslein.pclass.expression.AbstractInvocationExpression
              extended by org.siebengeisslein.pclass.expression.MethodInvocation
All Implemented Interfaces:
CommitConstrained, Instrumented, CodeFragment, Expression, ExpressionContainer

public class MethodInvocation
extends AbstractInvocationExpression


Constructor Summary
MethodInvocation(ExpressionContainer container)
           
 
Method Summary
 java.lang.String getDesc()
           
 PType getInvocationTarget()
           
 java.lang.String getMethodName()
           
 PType getResultType()
           
 PType getReturnType()
           
 void setMethodName(java.lang.String methodName)
           
 java.lang.String toString(java.lang.String indent)
           
 void visit(org.objectweb.asm.MethodVisitor mv, Frame frame, PClass clazz, boolean forAssignment)
           
 
Methods inherited from class org.siebengeisslein.pclass.expression.AbstractInvocationExpression
checkConstraints, containsChild, createParams, getParameters, onRemove, removeChild, replaceChild, setParameters, visitLoadParameters
 
Methods inherited from class org.siebengeisslein.pclass.expression.AbstractExpression
getContainer, getDataDirectory, getOwnerClass, getOwnerMethod, getTypeManager, getVariableManager, isAssignable, loadClass, replaceWith, setContainer, toString, visitAssignTo
 
Methods inherited from class org.siebengeisslein.client.Persistent
abort, clearUserLocals, clone, commit, disposeTransient, getGroup, getRef, getTransientValue, hashCode, initTransient, isWriteTransaction, joinWriteTransaction, readLock, setGroup, setTransientValue, toPersistent, toRef, writeExternal, writeLock
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.siebengeisslein.pclass.expression.ExpressionContainer
getDataDirectory, getOwnerClass, getOwnerMethod, getVariableManager
 

Constructor Detail

MethodInvocation

public MethodInvocation(ExpressionContainer container)
Method Detail

getDesc

public java.lang.String getDesc()

getInvocationTarget

public PType getInvocationTarget()

getReturnType

public PType getReturnType()

setMethodName

public void setMethodName(java.lang.String methodName)

getMethodName

public java.lang.String getMethodName()
Specified by:
getMethodName in class AbstractInvocationExpression

visit

public void visit(org.objectweb.asm.MethodVisitor mv,
                  Frame frame,
                  PClass clazz,
                  boolean forAssignment)
forAssignment - This indicates that the expression is evaluated to be assigned a value. In this case the last element should not be evaluated (e.g. obj.name should only push obj onto the stack, but to the value of "name".

getResultType

public PType getResultType()

toString

public java.lang.String toString(java.lang.String indent)