#include <QtCore/qhash.h>
#ifndef QHASH_H
struct QHashData{
   public: struct Node{
      public: struct QHashData::Node* next;
      public: uint h;
   };
   public: struct QHashData::Node* fakeNext;
   public: struct QHashData::Node* * buckets;
   public: struct QBasicAtomic ref;
   public: int size;
   public: int nodeSize;
   public: short int userNumBits;
   public: short int numBits;
   public: int numBuckets;
   public: unsigned int sharable:1;
   public: void* allocateNode();
   public: void freeNode(void* node);
   public: struct QHashData* detach_helper(void (* node_duplicate)(struct QHashData::Node*, void*), int nodeSize);
   public: void rehash(int hint);
   public: void destroyAndFree();
   public: static struct QHashData::Node* nextNode(struct QHashData::Node* node);
   public: static struct QHashData::Node* previousNode(struct QHashData::Node* node);
   public: static struct QHashData shared_null;
   public: inline void mightGrow();
   public: inline void hasShrunk();
   public: inline struct QHashData::Node* firstNode();
};
#endif // QHASH_H