X-Git-Url: http://plrg.eecs.uci.edu/git/?p=satune.git;a=blobdiff_plain;f=src%2FCollections%2Fstructs.h;h=dc6d66573c4f3c10bd355136dc493dab327941ca;hp=112fc08b0f2662db3a3272a789ac693ea29b040c;hb=ddc4141470ead8ab7bfa6047a6a6a0ac1766a91f;hpb=1d1fce5e2b9baf78074f2d7f6364c734b3cb02da diff --git a/src/Collections/structs.h b/src/Collections/structs.h index 112fc08..dc6d665 100644 --- a/src/Collections/structs.h +++ b/src/Collections/structs.h @@ -4,20 +4,27 @@ #include "hashtable.h" #include "hashset.h" #include "classlist.h" +#include "array.h" -VectorDef(Int, uint64_t, 4); +ArrayDef(Element, Element *); +ArrayDef(Boolean, Boolean *); +ArrayDef(Set, Set *); + + +VectorDef(Table, Table *, 4); +VectorDef(Set, Set *, 4); VectorDef(Boolean, Boolean *, 4); VectorDef(Constraint, Constraint *, 4); -VectorDef(Set, Set *, 4); -VectorDef(Element, Element *, 4); -VectorDef(TableEntry, TableEntry *, 4); +VectorDef(Function, Function *, 4); VectorDef(Predicate, Predicate *, 4); -VectorDef(Table, Table *, 4); +VectorDef(Element, Element *, 4); VectorDef(Order, Order *, 4); -VectorDef(Function, Function *, 4); +VectorDef(TableEntry, TableEntry *, 4); VectorDef(ASTNode, ASTNode *, 4); VectorDef(FunctionEncoding, FunctionEncoding *, 4); VectorDef(ElementEncoding, ElementEncoding *, 4); +VectorDef(Int, uint64_t, 4); + inline unsigned int Ptr_hash_function(void * hash) { return (unsigned int)((uint64_t)hash >> 4); @@ -33,4 +40,5 @@ HashTableDef(VoidToFuncEncod, void *, FunctionEncoding *, Ptr_hash_function, Ptr HashSetDef(Void, void *, Ptr_hash_function, Ptr_equals); + #endif