scale.alias.shapirohorowitz
Class ValueTypeCat

java.lang.Object
  extended by scale.alias.steensgaard.AliasType
      extended by scale.alias.shapirohorowitz.ValueTypeCat

public class ValueTypeCat
extends AliasType

A class which implements the non-standard type describing values.

$Id: ValueTypeCat.java,v 1.10 2005-06-15 04:17:05 asmith Exp $

Copyright 2008 by the Scale Compiler Group,
Department of Computer Science
University of Massachusetts,
Amherst MA. 01003, USA
All Rights Reserved.

In Steensgaard's paper, he refers to this as alpha types. A ValueType contains a location (tau) and function (lamda) type.

See Also:
LocationTypeCat, FunctionTypeCat

Field Summary
 
Fields inherited from class scale.alias.steensgaard.AliasType
BOT
 
Constructor Summary
ValueTypeCat(int categories)
          Create a new value type.
ValueTypeCat(Vector<ECR> l, Vector<ECR> f)
          Create a value type with a given location and function type.
 
Method Summary
 void cleanup()
          Remove any un-needed stuff after analysis has been performed.
 ECR getFunction(int index)
          Return the function type of the value.
 Vector<ECR> getFunctions()
          return the function vector
 ECR getLocation(int index)
          Return the location type of the value.
 Vector<ECR> getLocations()
          return the location vector
 java.lang.String toStringSpecial()
          Return a string representing of a value type.
 
Methods inherited from class scale.alias.steensgaard.AliasType
getNodeID, pointsTo, pointsToSize, toString, toStringClass, toStringShort, unify
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ValueTypeCat

public ValueTypeCat(int categories)
Create a new value type. The values of the location and function types are ECRs that represent the BOTTOM type.


ValueTypeCat

public ValueTypeCat(Vector<ECR> l,
                    Vector<ECR> f)
Create a value type with a given location and function type.

Parameters:
l - the ECR representing the location type.
f - the ECR representing the function type.
Method Detail

getLocation

public final ECR getLocation(int index)
Return the location type of the value.

Returns:
the location type of the value.

getFunction

public final ECR getFunction(int index)
Return the function type of the value.

Returns:
the function type of the value.

getLocations

public Vector<ECR> getLocations()
return the location vector


getFunctions

public Vector<ECR> getFunctions()
return the function vector


toStringSpecial

public java.lang.String toStringSpecial()
Return a string representing of a value type.

Overrides:
toStringSpecial in class AliasType
Returns:
a string representing of a value type.

cleanup

public void cleanup()
Remove any un-needed stuff after analysis has been performed.

Overrides:
cleanup in class AliasType