harpoon.Analysis.Maps
Class ExactTypeMapProxy

java.lang.Object
  |
  +--harpoon.Analysis.Maps.MapProxy
        |
        +--harpoon.Analysis.Maps.TypeMapProxy
              |
              +--harpoon.Analysis.Maps.ExactTypeMapProxy
All Implemented Interfaces:
ExactTypeMap, TypeMap

public class ExactTypeMapProxy
extends TypeMapProxy
implements ExactTypeMap

An ExactTypeMapProxy implements an ExactTypeMap for a cloned HCode given the HCodeAndMaps which specifies its relationship to an HCode for which an ExactTypeMap is known.

Version:
$Id: ExactTypeMapProxy.java,v 1.2 2002/02/25 20:58:10 cananian Exp $
Author:
C. Scott Ananian <cananian@alumni.princeton.edu>

Nested Class Summary
 
Nested classes inherited from class harpoon.Analysis.Maps.ExactTypeMap
ExactTypeMap.ExactType
 
Nested classes inherited from class harpoon.Analysis.Maps.TypeMap
TypeMap.TypeNotKnownException
 
Constructor Summary
ExactTypeMapProxy(HCodeAndMaps hcam, ExactTypeMap etm)
          Creates a ExactTypeMapProxy.
 
Method Summary
 boolean isExactType(HCodeElement hce, Temp t)
          Returns true if temporary t defined at definition point hce contains an object of the type returned by typeMap(hce, t) and not a subtype of that type.
 
Methods inherited from class harpoon.Analysis.Maps.TypeMapProxy
typeMap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface harpoon.Analysis.Maps.TypeMap
typeMap
 

Constructor Detail

ExactTypeMapProxy

public ExactTypeMapProxy(HCodeAndMaps hcam,
                         ExactTypeMap etm)
Creates a ExactTypeMapProxy.

Method Detail

isExactType

public boolean isExactType(HCodeElement hce,
                           Temp t)
Description copied from interface: ExactTypeMap
Returns true if temporary t defined at definition point hce contains an object of the type returned by typeMap(hce, t) and not a subtype of that type. Returns false if the object in t can be a subtype of the type returned by typeMap(hce, t).

If typeMap() returns a primitive type, then isExactType() should return true.

Specified by:
isExactType in interface ExactTypeMap
Parameters:
hce - The HCodeElement defining t for this request.
t - The Temp to examine.
Returns:
true if t's type is exact, false otherwise.