#ifndef IntPointHash_h
#define IntPointHash_h
#include "IntPoint.h"
#include <wtf/HashFunctions.h>
#include <wtf/HashTraits.h>
namespace WTF {
struct IntPointHash {
static unsigned hash(const WebCore::IntPoint& p) { return pairIntHash(p.x(), p.y()); }
static bool equal(const WebCore::IntPoint& a, const WebCore::IntPoint& b) { return a == b; }
static const bool safeToCompareToEmptyOrDeleted = true;
};
template<> struct HashTraits<WebCore::IntPoint> : GenericHashTraits<WebCore::IntPoint> {
static const bool needsDestruction = false;
static WebCore::IntPoint emptyValue() { return WebCore::IntPoint(0, std::numeric_limits<int>::min()); }
static void constructDeletedValue(WebCore::IntPoint& slot) { slot = WebCore::IntPoint(std::numeric_limits<int>::min(), 0); }
static bool isDeletedValue(const WebCore::IntPoint& slot) { return slot == WebCore::IntPoint(std::numeric_limits<int>::min(), 0); }
};
template<> struct DefaultHash<WebCore::IntPoint> {
typedef IntPointHash Hash;
};
}
#endif