chord.analyses.argret
Class DomZ

java.lang.Object
  extended by chord.util.IndexMap<T>
      extended by chord.bddbddb.Dom<T>
          extended by chord.project.analyses.ProgramDom<java.lang.Integer>
              extended by chord.analyses.argret.DomZ
All Implemented Interfaces:
IClassVisitor, IInvokeInstVisitor, IMethodVisitor, ITask, java.lang.Iterable<java.lang.Integer>

public class DomZ
extends ProgramDom<java.lang.Integer>
implements IInvokeInstVisitor

Domain of argument and return variable positions of methods and method invocation statements.

Let N be the largest number of arguments or return variables of any method or method invocation statement. Then, this domain contains elements 0, 1, ..., N-1 in order.

Author:
Mayur Naik (mhn@cs.stanford.edu)

Field Summary
 
Fields inherited from class chord.project.analyses.ProgramDom
consumes
 
Fields inherited from class chord.bddbddb.Dom
name
 
Fields inherited from class chord.util.IndexMap
hmap, list
 
Constructor Summary
DomZ()
           
 
Method Summary
 void grow(int newSize)
           
 void init()
           
 void visit(joeq.Class.jq_Class c)
          Visits all classes in the program.
 void visit(joeq.Class.jq_Method m)
          Visits all methods of all classes in the program.
 void visitInvokeInst(joeq.Compiler.Quad.Quad q)
          Visits all method invocation statements in all methods in the program.
 
Methods inherited from class chord.project.analyses.ProgramDom
fill, run, run, save, saveToXMLFile, toString, toXMLAttrsString, toXMLElemsString
 
Methods inherited from class chord.bddbddb.Dom
equals, getName, hashCode, print, print, save, setName, toUniqueString, toUniqueString
 
Methods inherited from class chord.util.IndexMap
add, addAll, clear, contains, get, getOrAdd, indexOf, iterator, size
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface chord.project.ITask
getName, setName
 

Constructor Detail

DomZ

public DomZ()
Method Detail

init

public void init()
Overrides:
init in class ProgramDom<java.lang.Integer>

visit

public void visit(joeq.Class.jq_Class c)
Description copied from interface: IClassVisitor
Visits all classes in the program.

Specified by:
visit in interface IClassVisitor
Parameters:
c - A class.

visit

public void visit(joeq.Class.jq_Method m)
Description copied from interface: IMethodVisitor
Visits all methods of all classes in the program.

Specified by:
visit in interface IMethodVisitor
Parameters:
m - A method.

visitInvokeInst

public void visitInvokeInst(joeq.Compiler.Quad.Quad q)
Description copied from interface: IInvokeInstVisitor
Visits all method invocation statements in all methods in the program.

Specified by:
visitInvokeInst in interface IInvokeInstVisitor
Parameters:
q - A method call statement.

grow

public void grow(int newSize)