summaryrefslogtreecommitdiff
path: root/src/analysis/lattice.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/analysis/lattice.h')
-rw-r--r--src/analysis/lattice.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/analysis/lattice.h b/src/analysis/lattice.h
index 6b468c2fc..5ab92a320 100644
--- a/src/analysis/lattice.h
+++ b/src/analysis/lattice.h
@@ -52,6 +52,9 @@ class FiniteIntPowersetLattice {
public:
FiniteIntPowersetLattice(size_t setSize) : setSize(setSize) {}
+ // Returns the size of the set that the powerset lattices was created from.
+ size_t getSetSize() { return setSize; }
+
// This represents an element of a powerset lattice. The element is itself a
// set which has set members. The bitvector tracks which possible members of
// the element are actually present.
@@ -127,6 +130,12 @@ public:
}
}
+ // Iterator to access the list of element members.
+ using membersIterator = typename std::vector<T>::const_iterator;
+ membersIterator membersBegin() { return members.cbegin(); }
+ membersIterator membersEnd() { return members.cend(); }
+ size_t getSetSize() { return intLattice.getSetSize(); }
+
T indexToMember(size_t index) { return members[index]; }
size_t memberToIndex(T member) { return memberIndices[member]; }