4 Set::Set(VarType t) : type(t), isRange(false), low(0), high(0) {
5 members = new Vector<uint64_t>();
8 Set::Set(VarType t, uint64_t *elements, uint num) : type(t), isRange(false), low(0), high(0) {
9 members = new Vector<uint64_t>(num, elements);
12 Set::Set(VarType t, uint64_t lowrange, uint64_t highrange) : type(t), isRange(true), low(lowrange), high(highrange), members(NULL) {
15 bool Set::exists(uint64_t element) {
17 return element >= low && element <= high;
19 uint size = members->getSize();
20 for (uint i = 0; i < size; i++) {
21 if (element == members->get(i))
28 uint64_t Set::getElement(uint index) {
32 return members->get(index);
37 return high - low + 1;
39 return members->getSize();