| Package | Description |
|---|---|
| cetus.analysis |
| Modifier and Type | Class and Description |
|---|---|
class |
NullDomain
Class NullDomain represents a Domain that contains no data.
|
class |
PointsToDomain
PointsToDomain represents a set of pointer-relationships at
a given program point, and is used by the Points-to Analyzer.
|
static class |
PointsToDomain.Universe
The Universe Domain is associated with the Points-To Domain
and hence the points-to analyzer.
|
class |
RangeDomain
RangeDomain provides symbolic environment for symbolic expression
comparison.
|
class |
SetDomain<T>
Class SetDomain represents a set-based domain.
|
| Modifier and Type | Method and Description |
|---|---|
<T extends Domain> |
IPANode.in()
Returns the IN data after joining all IN data.
|
<T extends Domain> |
CallSite.in()
Returns the IN data.
|
<T extends Domain> |
IPANode.in(CallSite calling_site)
Returns the context-sensitive IN data.
|
<T extends Domain> |
IPANode.out()
Returns the OUT data.
|
<T extends Domain> |
CallSite.out()
Returns the OUT data.
|
| Modifier and Type | Method and Description |
|---|---|
Domain |
Domain.clone()
Clones the domain.
|
Domain |
SetDomain.diffStrong(Domain other) |
Domain |
RangeDomain.diffStrong(Domain other) |
Domain |
PointsToDomain.diffStrong(Domain other)
Returns a subtraction of the relationships that are
identical in the other domain.
|
Domain |
PointsToDomain.Universe.diffStrong(Domain other) |
Domain |
NullDomain.diffStrong(Domain other) |
Domain |
Domain.diffStrong(Domain other)
Returns the result of strong difference.
|
Domain |
SetDomain.diffWeak(Domain other) |
Domain |
RangeDomain.diffWeak(Domain other) |
Domain |
PointsToDomain.diffWeak(Domain other)
Not supported
|
Domain |
PointsToDomain.Universe.diffWeak(Domain other) |
Domain |
NullDomain.diffWeak(Domain other) |
Domain |
Domain.diffWeak(Domain other)
Returns the result of weak difference.
|
static Domain |
NullDomain.getNull() |
static Domain |
IPPointsToAnalysis.getPointsToRelations(Statement stmt)
Returns points-to relations for the given statement.
|
Domain |
SetDomain.intersect(Domain other) |
Domain |
RangeDomain.intersect(Domain other) |
Domain |
PointsToDomain.intersect(Domain other)
Extract all pointer relationships that are
identical in the other points-to domain and
return a domain representing the intersection
|
Domain |
PointsToDomain.Universe.intersect(Domain other) |
Domain |
NullDomain.intersect(Domain other) |
Domain |
Domain.intersect(Domain other)
Returns intersection of the two domains.
|
Domain |
PointsToDomain.killSet(java.util.Set<Symbol> exps)
Provides a new Points-to domain that contains all
the pointer relationships for the symbols
provided as input to the kill Set.
|
Domain |
SetDomain.merge(Domain other) |
Domain |
RangeDomain.merge(Domain other) |
Domain |
PointsToDomain.merge(Domain other)
Merge this domain with another.
|
Domain |
PointsToDomain.Universe.merge(Domain other) |
Domain |
NullDomain.merge(Domain other) |
Domain |
Domain.merge(Domain other)
Returns merge of the two domains (join operation).
|
static Domain |
PointsToDomain.merge(Domain s1,
Domain s2)
Static method to merge two Points-to domains.
|
Domain |
SetDomain.union(Domain other) |
Domain |
RangeDomain.union(Domain other) |
Domain |
PointsToDomain.union(Domain other)
Union two points-to domains.
|
Domain |
PointsToDomain.Universe.union(Domain other) |
Domain |
NullDomain.union(Domain other) |
Domain |
Domain.union(Domain other)
Returns union of the two domains if applicable.
|
| Modifier and Type | Method and Description |
|---|---|
Domain |
SetDomain.diffStrong(Domain other) |
Domain |
RangeDomain.diffStrong(Domain other) |
Domain |
PointsToDomain.diffStrong(Domain other)
Returns a subtraction of the relationships that are
identical in the other domain.
|
Domain |
PointsToDomain.Universe.diffStrong(Domain other) |
Domain |
NullDomain.diffStrong(Domain other) |
Domain |
Domain.diffStrong(Domain other)
Returns the result of strong difference.
|
Domain |
SetDomain.diffWeak(Domain other) |
Domain |
RangeDomain.diffWeak(Domain other) |
Domain |
PointsToDomain.diffWeak(Domain other)
Not supported
|
Domain |
PointsToDomain.Universe.diffWeak(Domain other) |
Domain |
NullDomain.diffWeak(Domain other) |
Domain |
Domain.diffWeak(Domain other)
Returns the result of weak difference.
|
boolean |
SetDomain.equals(Domain other) |
boolean |
RangeDomain.equals(Domain other)
Pairwise comparison between two RangeDomain objects.
|
boolean |
PointsToDomain.equals(Domain other)
Compares equality based on set comparison for
set of PointsToRel
|
boolean |
PointsToDomain.Universe.equals(Domain other) |
boolean |
NullDomain.equals(Domain other) |
boolean |
Domain.equals(Domain other)
Checks if the other domain is equal to the current domain.
|
void |
IPANode.in(CallSite calling_site,
Domain domain)
Set the IN data with the specified Domain object and the calling site.
|
void |
CallSite.in(Domain domain)
Sets the IN data with the given Domain object.
|
Domain |
SetDomain.intersect(Domain other) |
Domain |
RangeDomain.intersect(Domain other) |
Domain |
PointsToDomain.intersect(Domain other)
Extract all pointer relationships that are
identical in the other points-to domain and
return a domain representing the intersection
|
Domain |
PointsToDomain.Universe.intersect(Domain other) |
Domain |
NullDomain.intersect(Domain other) |
Domain |
Domain.intersect(Domain other)
Returns intersection of the two domains.
|
Domain |
SetDomain.merge(Domain other) |
Domain |
RangeDomain.merge(Domain other) |
Domain |
PointsToDomain.merge(Domain other)
Merge this domain with another.
|
Domain |
PointsToDomain.Universe.merge(Domain other) |
Domain |
NullDomain.merge(Domain other) |
Domain |
Domain.merge(Domain other)
Returns merge of the two domains (join operation).
|
static Domain |
PointsToDomain.merge(Domain s1,
Domain s2)
Static method to merge two Points-to domains.
|
void |
IPANode.out(Domain domain)
Set the OUT data with the specified Domain object.
|
void |
CallSite.out(Domain domain)
Sets the OUT data with the given Domain object.
|
Domain |
SetDomain.union(Domain other) |
Domain |
RangeDomain.union(Domain other) |
Domain |
PointsToDomain.union(Domain other)
Union two points-to domains.
|
Domain |
PointsToDomain.Universe.union(Domain other) |
Domain |
NullDomain.union(Domain other) |
Domain |
Domain.union(Domain other)
Returns union of the two domains if applicable.
|