|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectscale.alias.AliasVar
scale.alias.steensgaard.TypeVar
public class TypeVar
A class which represents a type variable in Steensgaard's alias analysis algorithm.
$Id: TypeVar.java,v 1.30 2006-02-28 16:37:02 burrill Exp $
Copyright 2008 by the
Scale Compiler Group,
Department of Computer Science
University of Massachusetts,
Amherst MA. 01003, USA
All Rights Reserved.
A class which represents a type variable. The type variable is the interface between the user variables and the variables maintained by Steensgaard's algorithm. In the algorithm, each variable is associated with a type which is a description of the abstract location for the variable. The type is represented by an ECR which is an element in the fast union/find data structure.
ECR| Field Summary | |
|---|---|
protected ECR |
ecr
The ECR that represents the type of the variable. |
| Constructor Summary | |
|---|---|
TypeVar(Declaration decl)
Create a new type variable. |
|
TypeVar(Declaration n,
AliasType t)
|
|
TypeVar(Declaration decl,
TypeVar v)
Create a new type variable which is equivalent to the given type variable. |
|
| Method Summary | |
|---|---|
void |
allPointsTo(Vector<ECR> tv)
return all points-to relations from this type variable |
void |
cleanup()
Remove any un-needed stuff after analysis has been performed. |
java.lang.String |
getDisplayLabel()
Return a String suitable for labeling this node in a graphical display. |
ECR |
getECR()
Return the representative ECR associated with the type variable. |
ECR |
getOriginalECR()
Return the original ECR associated with the type variable. |
boolean |
isAlias()
Return true if the alias variable is involved in an alias relationship. |
Vector<ECR> |
pointsTo()
Return the points-to relation for this alias variable. |
int |
pointsToSize()
Return the points-to size for this alias variable. |
java.lang.String |
toStringSpecial()
Return a string representation of a type variable. |
| Methods inherited from class scale.alias.AliasVar |
|---|
getDeclName, toString, toStringClass |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected ECR ecr
| Constructor Detail |
|---|
public TypeVar(Declaration n,
AliasType t)
public TypeVar(Declaration decl)
public TypeVar(Declaration decl,
TypeVar v)
decl - is the name of the variable.v - is the type variable with the type information.| Method Detail |
|---|
public final ECR getECR()
getECR in class AliasVarpublic final ECR getOriginalECR()
public boolean isAlias()
isAlias in class AliasVarpublic Vector<ECR> pointsTo()
pointsTo in class AliasVarpublic int pointsToSize()
pointsToSize in class AliasVarpublic java.lang.String toStringSpecial()
toStringSpecial in class AliasVarpublic java.lang.String getDisplayLabel()
getDisplayLabel in class AliasVarpublic void cleanup()
cleanup in class AliasVarpublic void allPointsTo(Vector<ECR> tv)
allPointsTo in class AliasVar
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||