1#include <featureTests.h>
2#ifdef ROSE_ENABLE_SOURCE_ANALYSIS
7#include "CallGraphTraverse.h"
16 virtual void initialize() = 0;
18 virtual Lattice* copy()
const=0;
20 virtual void copy(
Lattice* that) = 0;
38 virtual void remapVars(
const std::map<varID, varID>& ,
const Function& ) {}
47 virtual void incorporateVars(
Lattice* ) {}
87 virtual bool unProject(
SgExpression* ,
Lattice* exprState) {
return meetUpdate(exprState); }
91 virtual bool meetUpdate(
Lattice* that)=0;
97 virtual bool operator==(
Lattice* that) =0;
98 bool operator!=(
Lattice* that) {
99 return !(*
this == that);
101 bool operator==(
Lattice& that) {
102 return *
this == &that;
104 bool operator!=(
Lattice& that) {
105 return !(*
this == that);
bool finiteLattice()
Check if this lattice is finite or not.
bool finiteLattice()
Check if this lattice is finite or not.
virtual bool finiteLattice()=0
Check if this lattice is finite or not.
This class represents the notion of an expression. Expressions are derived from SgLocatedNodes,...