// Otherwise there is nothing to be done.
return null;
}
} else if (value instanceof NewArrayExpr) {
// Since arrays are aliasable, we must update their types.
NewArrayExpr newExpr = (NewArrayExpr) value;
Type type = newExpr.getBaseType();
RefType tokenType = PtolemyUtilities.getBaseTokenType(type);
if ((tokenType != null)
&& (objectToInequalityTerm.get(newExpr) == null)) {
InequalityTerm typeTerm = new VariableTerm(PtolemyUtilities
.getTokenTypeForSootType(tokenType), newExpr);
// This is something we update, so put an entry
// in the map used for updating
objectToInequalityTerm.put(newExpr, typeTerm);
// Then the value of the expression is the type of the
// constructor.
return typeTerm;
}
// Otherwise there is nothing to be done.
return null;
} else if (value instanceof NewMultiArrayExpr) {
// Since arrays are aliasable, we must update their types.
NewMultiArrayExpr newExpr = (NewMultiArrayExpr) value;
Type type = newExpr.getBaseType();
RefType tokenType = PtolemyUtilities.getBaseTokenType(type);
if ((tokenType != null)
&& (objectToInequalityTerm.get(newExpr) == null)) {
InequalityTerm typeTerm = new VariableTerm(PtolemyUtilities