ptolemy.copernicus.java
Class DataUtilities

java.lang.Object
  extended by ptolemy.copernicus.java.DataUtilities

public class DataUtilities
extends java.lang.Object

This class consists of ptolemy-specific static utility methods for use with Soot. This class particularly contains code relating to the ptolemy.data package.

Since:
Ptolemy II 2.0
Version:
$Id: DataUtilities.java,v 1.37 2006/10/25 00:17:27 cxh Exp $
Author:
Stephen Neuendorffer
Accepted Rating:
Red (cxh)
Proposed Rating:
Red (cxh)

Nested Class Summary
static class DataUtilities.ActorCodeGenerationScope
          An inner class used by the generateExpressionCode() method.
 
Constructor Summary
DataUtilities()
           
 
Method Summary
static soot.Local generateExpressionCode(Entity entity, soot.SootClass entityClass, java.lang.String expression, java.util.Map nameToFieldOrLocal, java.util.Map nameToType, soot.jimple.JimpleBody body)
          Add code to the given body in a method of the given entityClass, representing the given entity that will evaluate the given expression.
static soot.Local generateExpressionCodeBefore(Entity entity, soot.SootClass entityClass, java.lang.String expression, java.util.Map nameToFieldOrLocal, java.util.Map nameToType, soot.jimple.JimpleBody body, soot.Unit insertPoint)
          Generate code before the given insert point in the given body in a method of the given entityClass, representing the given entity that will evaluate the given expression.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DataUtilities

public DataUtilities()
Method Detail

generateExpressionCodeBefore

public static soot.Local generateExpressionCodeBefore(Entity entity,
                                                      soot.SootClass entityClass,
                                                      java.lang.String expression,
                                                      java.util.Map nameToFieldOrLocal,
                                                      java.util.Map nameToType,
                                                      soot.jimple.JimpleBody body,
                                                      soot.Unit insertPoint)
Generate code before the given insert point in the given body in a method of the given entityClass, representing the given entity that will evaluate the given expression. Use the given maps to resolve the types and values of identifiers.

Parameters:
entity - The entity containing the expression.
entityClass - The class corresponding to the given entity.
expression - The expression.
nameToFieldOrLocal - A map from an identifier to a SootField in entityClass.
nameToType - A map from an identifier to a ptolemy data type.
body - The body to add code to.
insertPoint - The insertion point.

generateExpressionCode

public static soot.Local generateExpressionCode(Entity entity,
                                                soot.SootClass entityClass,
                                                java.lang.String expression,
                                                java.util.Map nameToFieldOrLocal,
                                                java.util.Map nameToType,
                                                soot.jimple.JimpleBody body)
Add code to the given body in a method of the given entityClass, representing the given entity that will evaluate the given expression. Use the given maps to resolve the types and values of identifiers.

Parameters:
entity - The entity containing the expression.
entityClass - The class corresponding to the given entity.
expression - The expression.
nameToFieldOrLocal - A map from an identifier to a SootField in entityClass.
nameToType - A map from an identifier to a ptolemy data type.
body - The body to add code to.