jist.runtime
Class RewriterTraversalVerifyAll

java.lang.Object
  extended by jist.runtime.ClassTraversal.Empty
      extended by jist.runtime.RewriterTraversalVerifyAll
All Implemented Interfaces:
ClassTraversal.Visitor

 class RewriterTraversalVerifyAll
extends ClassTraversal.Empty

Traversal object that ensures that a given class obeys the specific coding norms of JIST applications. Specifically, JistAPI.THIS may not appear in a non-entity or static method.

Since:
JIST1.0
Author:
Rimon Barr <barr+jist@cs.cornell.edu>
See Also:
JistAPI, JistAPI.Entity, JistAPI.THIS

Field Summary
private  org.apache.bcel.generic.ConstantPoolGen cpg
          class constant pool.
private  java.util.Vector errors
          accumulated verification errors.
private  Rewriter rewriter
          primary rewriter.
 
Constructor Summary
RewriterTraversalVerifyAll(Rewriter rewriter)
          Create rewriter object for general verification.
 
Method Summary
 org.apache.bcel.generic.ClassGen doClass(org.apache.bcel.generic.ClassGen cg)
          Upcall to process class before field and method processing.
 org.apache.bcel.generic.MethodGen doMethod(org.apache.bcel.generic.ClassGen cg, org.apache.bcel.generic.MethodGen mg)
          Upcall to process method before instruction processing.
 java.lang.String[] getErrors()
          Return accumulated errors.
 
Methods inherited from class jist.runtime.ClassTraversal.Empty
doClassPost, doField, doInstruction, doMethodPost
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

errors

private java.util.Vector errors
accumulated verification errors.


cpg

private org.apache.bcel.generic.ConstantPoolGen cpg
class constant pool.


rewriter

private Rewriter rewriter
primary rewriter.

Constructor Detail

RewriterTraversalVerifyAll

public RewriterTraversalVerifyAll(Rewriter rewriter)
Create rewriter object for general verification.

Parameters:
rewriter - reference to primary rewriter
Method Detail

getErrors

public java.lang.String[] getErrors()
Return accumulated errors.

Returns:
array of accumulated errors

doClass

public org.apache.bcel.generic.ClassGen doClass(org.apache.bcel.generic.ClassGen cg)
Upcall to process class before field and method processing.

Specified by:
doClass in interface ClassTraversal.Visitor
Overrides:
doClass in class ClassTraversal.Empty
Parameters:
cg - BCEL class generator object to process
Returns:
processed BCEL class generator object

doMethod

public org.apache.bcel.generic.MethodGen doMethod(org.apache.bcel.generic.ClassGen cg,
                                                  org.apache.bcel.generic.MethodGen mg)
Upcall to process method before instruction processing.

Specified by:
doMethod in interface ClassTraversal.Visitor
Overrides:
doMethod in class ClassTraversal.Empty
Parameters:
cg - BCEL class generator object
mg - BCEL method generator object to process
Returns:
processed BCEL method generator object