koala.dynamicjava.interpreter
Class EvaluationVisitor

java.lang.Object
  |
  +--koala.dynamicjava.tree.visitor.VisitorObject
        |
        +--koala.dynamicjava.interpreter.EvaluationVisitor
All Implemented Interfaces:
Visitor

public class EvaluationVisitor
extends VisitorObject

This tree visitor evaluates each node of a syntax tree


Constructor Summary
EvaluationVisitor(Context ctx)
          Creates a new visitor
 
Method Summary
 java.lang.Object visit(AddAssignExpression node)
          Visits an AddAssignExpression
 java.lang.Object visit(AddExpression node)
          Visits a AddExpression
 java.lang.Object visit(AndExpression node)
          Visits an AndExpression
 java.lang.Object visit(ArrayAccess node)
          Visits an ArrayAccess
 java.lang.Object visit(ArrayAllocation node)
          Visits an ArrayAllocation
 java.lang.Object visit(ArrayInitializer node)
          Visits a ArrayInitializer
 java.lang.Object visit(BitAndAssignExpression node)
          Visits a BitAndAssignExpression
 java.lang.Object visit(BitAndExpression node)
          Visits a BitAndExpression
 java.lang.Object visit(BitOrAssignExpression node)
          Visits a BitOrAssignExpression
 java.lang.Object visit(BitOrExpression node)
          Visits a BitOrExpression
 java.lang.Object visit(BlockStatement node)
          Visits a BlockStatement
 java.lang.Object visit(BreakStatement node)
          Visits a BreakStatement
 java.lang.Object visit(CastExpression node)
          Visits a CastExpression
 java.lang.Object visit(ClassAllocation node)
          Visits a ClassAllocation
 java.lang.Object visit(ComplementExpression node)
          Visits a ComplementExpression
 java.lang.Object visit(ConditionalExpression node)
          Visits a ConditionalExpression
 java.lang.Object visit(ContinueStatement node)
          Visits a ContinueStatement
 java.lang.Object visit(DivideAssignExpression node)
          Visits an DivideAssignExpression
 java.lang.Object visit(DivideExpression node)
          Visits a DivideExpression
 java.lang.Object visit(DoStatement node)
          Visits a DoStatement
 java.lang.Object visit(EqualExpression node)
          Visits an EqualExpression
 java.lang.Object visit(ExclusiveOrAssignExpression node)
          Visits a ExclusiveOrAssignExpression
 java.lang.Object visit(ExclusiveOrExpression node)
          Visits a ExclusiveOrExpression
 java.lang.Object visit(ForStatement node)
          Visits a ForStatement
 java.lang.Object visit(FunctionCall node)
          Visits a FunctionCall
 java.lang.Object visit(GreaterExpression node)
          Visits a GreaterExpression
 java.lang.Object visit(GreaterOrEqualExpression node)
          Visits a GreaterOrEqualExpression
 java.lang.Object visit(IfThenElseStatement node)
          Visits a IfThenElseStatement
 java.lang.Object visit(IfThenStatement node)
          Visits a IfThenStatement
 java.lang.Object visit(InnerAllocation node)
          Visits a InnerAllocation
 java.lang.Object visit(InstanceOfExpression node)
          Visits a InstanceOfExpression
 java.lang.Object visit(LabeledStatement node)
          Visits a LabeledStatement
 java.lang.Object visit(LessExpression node)
          Visits a LessExpression
 java.lang.Object visit(LessOrEqualExpression node)
          Visits a LessOrEqualExpression
 java.lang.Object visit(Literal node)
          Visits a Literal
 java.lang.Object visit(MinusExpression node)
          Visits a MinusExpression
 java.lang.Object visit(MultiplyAssignExpression node)
          Visits an MultiplyAssignExpression
 java.lang.Object visit(MultiplyExpression node)
          Visits a MultiplyExpression
 java.lang.Object visit(NotEqualExpression node)
          Visits a NotEqualExpression
 java.lang.Object visit(NotExpression node)
          Visits a NotExpression
 java.lang.Object visit(ObjectFieldAccess node)
          Visits an ObjectFieldAccess
 java.lang.Object visit(ObjectMethodCall node)
          Visits an ObjectMethodCall
 java.lang.Object visit(OrExpression node)
          Visits an OrExpression
 java.lang.Object visit(PlusExpression node)
          Visits a PlusExpression
 java.lang.Object visit(PostDecrement node)
          Visits a PostDecrement
 java.lang.Object visit(PostIncrement node)
          Visits a PostIncrement
 java.lang.Object visit(PreDecrement node)
          Visits a PreDecrement
 java.lang.Object visit(PreIncrement node)
          Visits a PreIncrement
 java.lang.Object visit(QualifiedName node)
          Visits a QualifiedName
 java.lang.Object visit(RemainderAssignExpression node)
          Visits an RemainderAssignExpression
 java.lang.Object visit(RemainderExpression node)
          Visits a RemainderExpression
 java.lang.Object visit(ReturnStatement node)
          Visits a ReturnStatement
 java.lang.Object visit(ShiftLeftAssignExpression node)
          Visits a ShiftLeftAssignExpression
 java.lang.Object visit(ShiftLeftExpression node)
          Visits a ShiftLeftExpression
 java.lang.Object visit(ShiftRightAssignExpression node)
          Visits a ShiftRightAssignExpression
 java.lang.Object visit(ShiftRightExpression node)
          Visits a ShiftRightExpression
 java.lang.Object visit(SimpleAllocation node)
          Visits a SimpleAllocation
 java.lang.Object visit(SimpleAssignExpression node)
          Visits a SimpleAssignExpression
 java.lang.Object visit(StaticFieldAccess node)
          Visits a StaticFieldAccess
 java.lang.Object visit(StaticMethodCall node)
          Visits a StaticMethodCall
 java.lang.Object visit(SubtractAssignExpression node)
          Visits an SubtractAssignExpression
 java.lang.Object visit(SubtractExpression node)
          Visits a SubtractExpression
 java.lang.Object visit(SuperFieldAccess node)
          Visits a SuperFieldAccess
 java.lang.Object visit(SuperMethodCall node)
          Visits a SuperMethodCall
 java.lang.Object visit(SwitchStatement node)
          Visits a SwitchStatement
 java.lang.Object visit(SynchronizedStatement node)
          Visits a SynchronizedStatement
 java.lang.Object visit(ThrowStatement node)
          Visits a ThrowStatement
 java.lang.Object visit(TryStatement node)
          Visits a TryStatement
 java.lang.Object visit(TypeExpression node)
          Visits a TypeExpression
 java.lang.Object visit(UnsignedShiftRightAssignExpression node)
          Visits a UnsignedShiftRightAssignExpression
 java.lang.Object visit(UnsignedShiftRightExpression node)
          Visits a UnsignedShiftRightExpression
 java.lang.Object visit(VariableDeclaration node)
          Visits a VariableDeclaration
 java.lang.Object visit(WhileStatement node)
          Visits a WhileStatement
 
Methods inherited from class koala.dynamicjava.tree.visitor.VisitorObject
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EvaluationVisitor

public EvaluationVisitor(Context ctx)
Creates a new visitor
Parameters:
ctx - the current context
Method Detail

visit

public java.lang.Object visit(WhileStatement node)
Visits a WhileStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ForStatement node)
Visits a ForStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(DoStatement node)
Visits a DoStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(SwitchStatement node)
Visits a SwitchStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(LabeledStatement node)
Visits a LabeledStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(SynchronizedStatement node)
Visits a SynchronizedStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(BreakStatement node)
Visits a BreakStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ContinueStatement node)
Visits a ContinueStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(TryStatement node)
Visits a TryStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ThrowStatement node)
Visits a ThrowStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ReturnStatement node)
Visits a ReturnStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(IfThenStatement node)
Visits a IfThenStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(IfThenElseStatement node)
Visits a IfThenElseStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(BlockStatement node)
Visits a BlockStatement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(Literal node)
Visits a Literal
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(VariableDeclaration node)
Visits a VariableDeclaration
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ObjectFieldAccess node)
Visits an ObjectFieldAccess
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ObjectMethodCall node)
Visits an ObjectMethodCall
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(StaticFieldAccess node)
Visits a StaticFieldAccess
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(SuperFieldAccess node)
Visits a SuperFieldAccess
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(SuperMethodCall node)
Visits a SuperMethodCall
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(StaticMethodCall node)
Visits a StaticMethodCall
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(SimpleAssignExpression node)
Visits a SimpleAssignExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(QualifiedName node)
Visits a QualifiedName
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit
Returns:
the value of the local variable represented by this node

visit

public java.lang.Object visit(TypeExpression node)
Visits a TypeExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(SimpleAllocation node)
Visits a SimpleAllocation
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ArrayAllocation node)
Visits an ArrayAllocation
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ArrayInitializer node)
Visits a ArrayInitializer
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ArrayAccess node)
Visits an ArrayAccess
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(InnerAllocation node)
Visits a InnerAllocation
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ClassAllocation node)
Visits a ClassAllocation
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(NotExpression node)
Visits a NotExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ComplementExpression node)
Visits a ComplementExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(PlusExpression node)
Visits a PlusExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(MinusExpression node)
Visits a MinusExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(AddExpression node)
Visits a AddExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(AddAssignExpression node)
Visits an AddAssignExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(SubtractExpression node)
Visits a SubtractExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(SubtractAssignExpression node)
Visits an SubtractAssignExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(MultiplyExpression node)
Visits a MultiplyExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(MultiplyAssignExpression node)
Visits an MultiplyAssignExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(DivideExpression node)
Visits a DivideExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(DivideAssignExpression node)
Visits an DivideAssignExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(RemainderExpression node)
Visits a RemainderExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(RemainderAssignExpression node)
Visits an RemainderAssignExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(EqualExpression node)
Visits an EqualExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(NotEqualExpression node)
Visits a NotEqualExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(LessExpression node)
Visits a LessExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(LessOrEqualExpression node)
Visits a LessOrEqualExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(GreaterExpression node)
Visits a GreaterExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(GreaterOrEqualExpression node)
Visits a GreaterOrEqualExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(InstanceOfExpression node)
Visits a InstanceOfExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ConditionalExpression node)
Visits a ConditionalExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(PostIncrement node)
Visits a PostIncrement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(PreIncrement node)
Visits a PreIncrement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(PostDecrement node)
Visits a PostDecrement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(PreDecrement node)
Visits a PreDecrement
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(CastExpression node)
Visits a CastExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(BitAndExpression node)
Visits a BitAndExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(BitAndAssignExpression node)
Visits a BitAndAssignExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ExclusiveOrExpression node)
Visits a ExclusiveOrExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ExclusiveOrAssignExpression node)
Visits a ExclusiveOrAssignExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(BitOrExpression node)
Visits a BitOrExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(BitOrAssignExpression node)
Visits a BitOrAssignExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ShiftLeftExpression node)
Visits a ShiftLeftExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ShiftLeftAssignExpression node)
Visits a ShiftLeftAssignExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ShiftRightExpression node)
Visits a ShiftRightExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(ShiftRightAssignExpression node)
Visits a ShiftRightAssignExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(UnsignedShiftRightExpression node)
Visits a UnsignedShiftRightExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(UnsignedShiftRightAssignExpression node)
Visits a UnsignedShiftRightAssignExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(AndExpression node)
Visits an AndExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(OrExpression node)
Visits an OrExpression
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit

visit

public java.lang.Object visit(FunctionCall node)
Visits a FunctionCall
Overrides:
visit in class VisitorObject
Parameters:
node - the node to visit


Copyright © 2001 Stephane Hillion. All Rights Reserved.