summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/heap/Handle.h
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@nokia.com>2012-05-07 11:21:11 +0200
committerSimon Hausmann <simon.hausmann@nokia.com>2012-05-07 11:21:11 +0200
commit2cf6c8816a73e0132bd8fa3b509d62d7c51b6e47 (patch)
tree988e8c5b116dd0466244ae2fe5af8ee9be926d76 /Source/JavaScriptCore/heap/Handle.h
parentdd91e772430dc294e3bf478c119ef8d43c0a3358 (diff)
downloadqtwebkit-2cf6c8816a73e0132bd8fa3b509d62d7c51b6e47.tar.gz
Imported WebKit commit 7e538425aa020340619e927792f3d895061fb54b (http://svn.webkit.org/repository/webkit/trunk@116286)
Diffstat (limited to 'Source/JavaScriptCore/heap/Handle.h')
-rw-r--r--Source/JavaScriptCore/heap/Handle.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/Source/JavaScriptCore/heap/Handle.h b/Source/JavaScriptCore/heap/Handle.h
index 6f467743c..8bf2bd896 100644
--- a/Source/JavaScriptCore/heap/Handle.h
+++ b/Source/JavaScriptCore/heap/Handle.h
@@ -48,7 +48,7 @@ template<typename KeyType, typename MappedType, typename FinalizerCallback, type
class HandleBase {
template <typename T> friend class Weak;
- friend class HandleHeap;
+ friend class HandleSet;
friend struct JSCallbackObjectData;
template <typename KeyType, typename MappedType, typename FinalizerCallback, typename HashArg, typename KeyTraitsArg> friend class WeakGCMap;
@@ -59,6 +59,8 @@ public:
typedef JSValue (HandleBase::*UnspecifiedBoolType);
operator UnspecifiedBoolType*() const { return (m_slot && *m_slot) ? reinterpret_cast<UnspecifiedBoolType*>(1) : 0; }
+ HandleSlot slot() const { return m_slot; }
+
protected:
HandleBase(HandleSlot slot)
: m_slot(slot)
@@ -67,7 +69,6 @@ protected:
void swap(HandleBase& other) { std::swap(m_slot, other.m_slot); }
- HandleSlot slot() const { return m_slot; }
void setSlot(HandleSlot slot)
{
m_slot = slot;
@@ -132,7 +133,8 @@ protected:
}
private:
- friend class HandleHeap;
+ friend class HandleSet;
+ friend class WeakBlock;
static Handle<T> wrapSlot(HandleSlot slot)
{