Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

openjava.ptree.util
Class ExpansionApplier  view ExpansionApplier download ExpansionApplier.java

java.lang.Object
  extended byopenjava.ptree.util.ParseTreeVisitor
      extended byopenjava.ptree.util.EvaluationShuttle
          extended byopenjava.ptree.util.ScopeHandler
              extended byopenjava.ptree.util.VariableBinder
                  extended byopenjava.ptree.util.ExpansionApplier

public class ExpansionApplier
extends VariableBinder

The class ExpansionApplier is an evaluator of each objects of ParseTree family. Each methods in this class is invoked from the class EvaluationShuttle.

The method evaluateDown() is invoked before evaluating the children of the parse tree object, and evaluateUp() is invoked after the evaluation.

For a class P and a object p statically typed as P, the parts in source code each expantion will be applied are:

in feature version:

Since:
$Id: ExpansionApplier.java,v 1.2 2003/02/19 02:55:00 tatsubori Exp $
Version:
1.0

Field Summary
 
Fields inherited from class openjava.ptree.util.ScopeHandler
 
Fields inherited from class openjava.ptree.util.EvaluationShuttle
 
Constructor Summary
ExpansionApplier(openjava.mop.Environment env)
           
 
Method Summary
private  openjava.mop.OJClass computeRefType(openjava.ptree.TypeName typename, openjava.ptree.Expression expr)
           
 openjava.ptree.Expression evaluateUp(openjava.ptree.AllocationExpression p)
          Includes expandAllocation() and expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.ArrayAccess p)
          Includes expandArrayAccess() and expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.ArrayAllocationExpression p)
          Includes expandArrayAllocation() and expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.AssignmentExpression p)
          Includes expandFieldWrite(), expandAssignmentExpression() and expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.BinaryExpression p)
          Includes expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.CastExpression p)
          Includes expandCastExpression(), expandCastedExpression() and expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.ClassLiteral p)
          Includes expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.ConditionalExpression p)
          Includes expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.FieldAccess p)
          Includes expandFieldRead() and expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.InstanceofExpression p)
          Includes expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.Literal p)
          Includes expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.MethodCall p)
          Includes expandMethodCall() and expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.SelfAccess p)
          Includes expandExpression().
 openjava.ptree.TypeName evaluateUp(openjava.ptree.TypeName p)
          Includes expandTypeName().
 openjava.ptree.Expression evaluateUp(openjava.ptree.UnaryExpression p)
          Includes expandExpression().
 openjava.ptree.Expression evaluateUp(openjava.ptree.Variable p)
          Includes expandExpression().
 openjava.ptree.Statement evaluateUp(openjava.ptree.VariableDeclaration p)
          Includes expandVariableDeclaration().
private  openjava.mop.OJClass getSelfType()
           
private  openjava.mop.OJClass getType(openjava.ptree.Expression p)
           
private  openjava.mop.OJClass getType(openjava.ptree.TypeName typename)
           
 void visit(openjava.ptree.AssignmentExpression p)
           
 
Methods inherited from class openjava.ptree.util.VariableBinder
evaluateDown, evaluateDown, evaluateDown
 
Methods inherited from class openjava.ptree.util.ScopeHandler
evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, pop, push, pushClosedEnvironment
 
Methods inherited from class openjava.ptree.util.EvaluationShuttle
evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateDown, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, evaluateUp, getEnvironment, setEnvironment, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
 
Methods inherited from class openjava.ptree.util.ParseTreeVisitor
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

ExpansionApplier

public ExpansionApplier(openjava.mop.Environment env)
Method Detail

getType

private openjava.mop.OJClass getType(openjava.ptree.Expression p)
                              throws openjava.ptree.ParseTreeException

getSelfType

private openjava.mop.OJClass getSelfType()
                                  throws openjava.ptree.ParseTreeException

getType

private openjava.mop.OJClass getType(openjava.ptree.TypeName typename)
                              throws openjava.ptree.ParseTreeException

computeRefType

private openjava.mop.OJClass computeRefType(openjava.ptree.TypeName typename,
                                            openjava.ptree.Expression expr)
                                     throws openjava.ptree.ParseTreeException

visit

public void visit(openjava.ptree.AssignmentExpression p)
           throws openjava.ptree.ParseTreeException
Overrides:
visit in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.AllocationExpression p)
                                     throws openjava.ptree.ParseTreeException
Includes expandAllocation() and expandExpression().

Overrides:
evaluateUp in class ScopeHandler

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.ArrayAccess p)
                                     throws openjava.ptree.ParseTreeException
Includes expandArrayAccess() and expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.ArrayAllocationExpression p)
                                     throws openjava.ptree.ParseTreeException
Includes expandArrayAllocation() and expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.AssignmentExpression p)
                                     throws openjava.ptree.ParseTreeException
Includes expandFieldWrite(), expandAssignmentExpression() and expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.BinaryExpression p)
                                     throws openjava.ptree.ParseTreeException
Includes expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.CastExpression p)
                                     throws openjava.ptree.ParseTreeException
Includes expandCastExpression(), expandCastedExpression() and expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.ClassLiteral p)
                                     throws openjava.ptree.ParseTreeException
Includes expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.ConditionalExpression p)
                                     throws openjava.ptree.ParseTreeException
Includes expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.FieldAccess p)
                                     throws openjava.ptree.ParseTreeException
Includes expandFieldRead() and expandExpression(). Not to be applied for itself.

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.InstanceofExpression p)
                                     throws openjava.ptree.ParseTreeException
Includes expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.Literal p)
                                     throws openjava.ptree.ParseTreeException
Includes expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.MethodCall p)
                                     throws openjava.ptree.ParseTreeException
Includes expandMethodCall() and expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.SelfAccess p)
                                     throws openjava.ptree.ParseTreeException
Includes expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.TypeName evaluateUp(openjava.ptree.TypeName p)
                                   throws openjava.ptree.ParseTreeException
Includes expandTypeName().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.UnaryExpression p)
                                     throws openjava.ptree.ParseTreeException
Includes expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Expression evaluateUp(openjava.ptree.Variable p)
                                     throws openjava.ptree.ParseTreeException
Includes expandExpression().

Overrides:
evaluateUp in class EvaluationShuttle

evaluateUp

public openjava.ptree.Statement evaluateUp(openjava.ptree.VariableDeclaration p)
                                    throws openjava.ptree.ParseTreeException
Includes expandVariableDeclaration().

Overrides:
evaluateUp in class EvaluationShuttle