org.siebengeisslein.pclass.expression
Interface Expression
- All Superinterfaces:
- CodeFragment
- All Known Subinterfaces:
- BooleanExpression, FilterExpression
- All Known Implementing Classes:
- AbstractExpression, AbstractInvocationExpression, AbstractLiteral, BinaryOperator, BooleanLiteral, ByteLiteral, CastExpression, CharLiteral, ClassExpression, ConstructorInvocation, DereferenceExpression, DoubleLiteral, FloatLiteral, IntLiteral, LongLiteral, MethodInvocation, NullExpression, OperandFilterExpression, ParenthesisExpression, QueryExpression, ShortLiteral, StringLiteral, SuperConstructorInvocation, TableExpression, UnknownExpression, VariableExpression
public interface Expression
- extends CodeFragment
getContainer
ExpressionContainer getContainer()
setContainer
void setContainer(ExpressionContainer container)
replaceWith
void replaceWith(Expression expression)
getVariableManager
VariableManager getVariableManager()
visit
void visit(org.objectweb.asm.MethodVisitor mv,
Frame frame,
PClass clazz,
boolean forAssignment)
- Parameters:
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".
visitAssignTo
void visitAssignTo(org.objectweb.asm.MethodVisitor mv,
Frame frame,
PClass clazz)
getResultType
PType getResultType()
toString
java.lang.String toString(java.lang.String indent)
isAssignable
boolean isAssignable()
onRemove
void onRemove()