|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object scale.alias.steensgaard.AliasType scale.alias.steensgaard.LocationType
public class LocationType
A class which implements the non-standard type describing locations (or pointers to locations). In Steensgaard's paper, he refers to
$Id: LocationType.java,v 1.22 2005-02-07 21:27:11 burrill 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 tau types. A location is either bottom (upside down T) or is a value. This type represents a pointer to either another LocationType or to a FunctionType.
In theory, this class contains an ECR representing a ValueType. In practice, instead of maintaining a field with the ValueType, we expose the location and function fields of the ValueType in this class in order to improve efficiency.
ValueType
,
FunctionType
Field Summary |
---|
Fields inherited from class scale.alias.steensgaard.AliasType |
---|
BOT |
Constructor Summary | |
---|---|
LocationType()
Create a new location type. |
|
LocationType(ECR location,
ECR function)
Create a location type with an initial value. |
Method Summary | |
---|---|
void |
cleanup()
Remove any un-needed stuff after analysis has been performed. |
ECR |
getFunction()
Return the type that represents the pointed-to function. |
ECR |
getLocation()
Return the type that represents the pointed-to location. |
Vector<ECR> |
pointsTo()
Return the list of ECRs that this location type represents. |
int |
pointsToSize()
Return the number of ECRs that this location type represents. |
java.lang.String |
toStringSpecial()
Return a string representing of a location type. |
void |
unify(AliasType t)
Recursively join two location types. |
Methods inherited from class scale.alias.steensgaard.AliasType |
---|
getNodeID, toString, toStringClass, toStringShort |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public LocationType()
public LocationType(ECR location, ECR function)
location
- the ECR representing the location.function
- the ECR representing the function.Method Detail |
---|
public final ECR getLocation()
public final ECR getFunction()
public final void unify(AliasType t)
unify
in class AliasType
t
- a location type.public Vector<ECR> pointsTo()
pointsTo
in class AliasType
public int pointsToSize()
pointsToSize
in class AliasType
public java.lang.String toStringSpecial()
toStringSpecial
in class AliasType
public void cleanup()
cleanup
in class AliasType
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |