envgen.analysis.stat.locs
Class SymLocTop

java.lang.Object
  |
  +--envgen.analysis.stat.locs.SymLocValue
        |
        +--envgen.analysis.stat.locs.SymLoc
              |
              +--envgen.analysis.stat.locs.SymLocTop
All Implemented Interfaces:
soot.EquivTo, java.io.Serializable, soot.util.Switchable, soot.Value

public class SymLocTop
extends SymLoc

Implementation of symbolic location that represents a memory location. There are four different symbolic locations that can be identified by the analysis: unit locations, locations reachable from the unit through a chain of references, locations in the environment, and locations that the analysis can't identify (unknown locations).

See Also:
Serialized Form

Field Summary
(package private)  int debug
           
static int DUMMY_LOC
           
static int ENVIRONMENT_LOC
          Used to identify location in the environment.
static int READ_LOC
           
static int UNKNOWN_LOC
          Used to identify locations that the analysis can't prroduce more precise information.
static int WRITE_LOC
           
 
Fields inherited from class envgen.analysis.stat.locs.SymLoc
kind, modifiedAccessor, modifiedType, singular, type
 
Constructor Summary
SymLocTop(int kind)
          Used to create a dummy location.
SymLocTop(int kind, soot.Type type)
          Used to create an environment or unknown location.
SymLocTop(SymLocTop loc)
          Copy constructor.
 
Method Summary
 boolean equals(SymLocTop second)
           
 java.lang.String getCode()
          Generates code representation of symbolic location appropriate for code generation.
 boolean isDummyLoc()
           
 boolean isEnvironmentLoc()
          Returns true is this is an environment location.
 boolean isUnknownLoc()
          Returns true if this is an unknown location.
 void setCastType(soot.Type t)
           
 java.lang.String toString()
           
 
Methods inherited from class envgen.analysis.stat.locs.SymLoc
apply, clone, equals, equivHashCode, equivTo, getKind, getModifiedAccessor, getModifiedType, getSingular, getType, getUseBoxes, isSingular, setKind, setModifiedAccessor, setModifiedType, setSingular, setType, toString
 
Methods inherited from class envgen.analysis.stat.locs.SymLocValue
equals
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ENVIRONMENT_LOC

public static final int ENVIRONMENT_LOC
Used to identify location in the environment.

See Also:
Constant Field Values

UNKNOWN_LOC

public static final int UNKNOWN_LOC
Used to identify locations that the analysis can't prroduce more precise information.

See Also:
Constant Field Values

DUMMY_LOC

public static final int DUMMY_LOC
See Also:
Constant Field Values

READ_LOC

public static final int READ_LOC
See Also:
Constant Field Values

WRITE_LOC

public static final int WRITE_LOC
See Also:
Constant Field Values

debug

int debug
Constructor Detail

SymLocTop

public SymLocTop(int kind)
Used to create a dummy location.


SymLocTop

public SymLocTop(int kind,
                 soot.Type type)
Used to create an environment or unknown location.


SymLocTop

public SymLocTop(SymLocTop loc)
Copy constructor.

Method Detail

isEnvironmentLoc

public boolean isEnvironmentLoc()
Returns true is this is an environment location.


isUnknownLoc

public boolean isUnknownLoc()
Returns true if this is an unknown location.


isDummyLoc

public boolean isDummyLoc()

setCastType

public void setCastType(soot.Type t)
Specified by:
setCastType in class SymLoc

equals

public boolean equals(SymLocTop second)

getCode

public java.lang.String getCode()
Generates code representation of symbolic location appropriate for code generation.

Specified by:
getCode in class SymLoc

toString

public java.lang.String toString()
Specified by:
toString in class SymLoc