Merge branch 'brian' of ssh://demsky.eecs.uci.edu/home/git/constraint_compiler into...
[satune.git] / src / Collections / structs.h
index 112fc08b0f2662db3a3272a789ac693ea29b040c..6b274cec11d7ccdbed208480fc45d10753c9fe5d 100644 (file)
@@ -4,33 +4,27 @@
 #include "hashtable.h"
 #include "hashset.h"
 #include "classlist.h"
+#include "array.h"
 
-VectorDef(Int, uint64_t, 4);
-VectorDef(Boolean, Boolean *, 4);
-VectorDef(Constraint, Constraint *, 4);
-VectorDef(Set, Set *, 4);
-VectorDef(Element, Element *, 4);
-VectorDef(TableEntry, TableEntry *, 4);
-VectorDef(Predicate, Predicate *, 4);
-VectorDef(Table, Table *, 4);
-VectorDef(Order, Order *, 4);
-VectorDef(Function, Function *, 4);
-VectorDef(ASTNode, ASTNode *, 4);
-VectorDef(FunctionEncoding, FunctionEncoding *, 4);
-VectorDef(ElementEncoding, ElementEncoding *, 4);
+ArrayDef(Element, Element *);
+ArrayDef(Boolean, Boolean *);
+ArrayDef(Set, Set *);
 
-inline unsigned int Ptr_hash_function(void * hash) {
-       return (unsigned int)((uint64_t)hash >> 4);
-}
+VectorDef(Table, Table *);
+VectorDef(Set, Set *);
+VectorDef(Boolean, Boolean *);
+VectorDef(Constraint, Constraint *);
+VectorDef(Function, Function *);
+VectorDef(Predicate, Predicate *);
+VectorDef(Element, Element *);
+VectorDef(Order, Order *);
+VectorDef(TableEntry, TableEntry *);
+VectorDef(ASTNode, ASTNode *);
+VectorDef(Int, uint64_t);
 
-inline bool Ptr_equals(void * key1, void * key2) {
-       return key1 == key2;
-}
+HashTableDef(Void, void *, void *);
+HashTableDef(BoolConst, OrderPair *, Constraint *);
 
-HashTableDef(Void, void *, void *, Ptr_hash_function, Ptr_equals);
-HashTableDef(ElemToEncod, Element *, ElementEncoding *, Ptr_hash_function, Ptr_equals);
-HashTableDef(VoidToFuncEncod, void *, FunctionEncoding *, Ptr_hash_function, Ptr_equals);
-
-HashSetDef(Void, void *, Ptr_hash_function, Ptr_equals);
+HashSetDef(Void, void *);
 
 #endif