Fix name collisions
[satune.git] / src / AST / table.h
index cff8ec6c80ddd056c2707f1666f98682cb7c41ba..39b561ce386b38f6efee7a1b7dd20864cccdeffe 100644 (file)
@@ -4,14 +4,17 @@
 #include "mymemory.h"
 #include "structs.h"
 
-struct Table {
-       Set ** domains;
-       Set * range;
-       uint numDomains;
-       VectorTableEntry* entries;
+class Table {
+public:
+       Table(Set **domains, uint numDomain, Set *range);
+       void addNewTableEntry(uint64_t *inputs, uint inputSize, uint64_t result);
+       TableEntry *getTableEntry(uint64_t *inputs, uint inputSize);
+       Table *clone(CSolver *solver, CloneMap *map);
+       ~Table();
+       Array<Set *> domains;
+       Set *range;
+       HashsetTableEntry *entries;
+       CMEMALLOC;
 };
 
-Table * allocTable(Set **domains, uint numDomain, Set * range);
-void addNewTableEntry(Table* table, uint64_t* inputs, uint inputSize, uint64_t result);
-void deleteTable(Table* table);
 #endif