#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