X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=src%2FCollections%2Fstructs.h;h=6b274cec11d7ccdbed208480fc45d10753c9fe5d;hb=67de286d5d94420d14a9f7910b78e7271a65a842;hp=888f359e3fdee2266f7a63a661ecc7e8bba26046;hpb=2fdb3e8b65ae7e1490997e5df9ad8cc0929e1589;p=satune.git diff --git a/src/Collections/structs.h b/src/Collections/structs.h index 888f359..6b274ce 100644 --- a/src/Collections/structs.h +++ b/src/Collections/structs.h @@ -4,22 +4,27 @@ #include "hashtable.h" #include "hashset.h" #include "classlist.h" +#include "array.h" -VectorDef(Int, uint64_t, 4); -VectorDef(Void, void *, 4); -VectorDef(Boolean, Boolean *, 4); -VectorDef(Constraint, Constraint *, 4); -VectorDef(Set, Set *, 4); -VectorDef(Element, Element *, 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 *); + +HashSetDef(Void, void *); -HashTableDef(Void, void *, void *, Ptr_hash_function, Ptr_equals); -HashSetDef(Void, void *, Ptr_hash_function, Ptr_equals); #endif