Home | History | Annotate | Download | only in heap

Lines Matching defs:WeakMember

688 // WeakMember is similar to Member in that it is used to point to other oilpan
690 // However instead of creating a strong pointer to the object, the WeakMember creates
695 class WeakMember : public Member<T> {
696 WTF_DISALLOW_CONSTRUCTION_FROM_ZERO(WeakMember);
697 WTF_DISALLOW_ZERO_ASSIGNMENT(WeakMember);
699 WeakMember() : Member<T>() { }
701 WeakMember(std::nullptr_t) : Member<T>(nullptr) { }
703 WeakMember(T* raw) : Member<T>(raw) { }
705 WeakMember(WTF::HashTableDeletedValueType x) : Member<T>(x) { }
708 WeakMember(const Persistent<U>& other) : Member<T>(other) { }
711 WeakMember(const Member<U>& other) : Member<T>(other) { }
714 WeakMember& operator=(const Persistent<U>& other)
721 WeakMember& operator=(const Member<U>& other)
728 WeakMember& operator=(U* other)
735 WeakMember& operator=(const RawPtr<U>& other)
741 WeakMember& operator=(std::nullptr_t)
793 #define RefPtrWillBeWeakMember WebCore::WeakMember
796 #define RawPtrWillBeWeakMember WebCore::WeakMember
803 #define WeakPtrWillBeWeakMember WebCore::WeakMember
990 template <typename T> struct VectorTraits<WebCore::WeakMember<T> > : VectorTraitsBase<WebCore::WeakMember<T> > {
1047 template<typename T> struct HashTraits<WebCore::WeakMember<T> > : SimpleClassHashTraits<WebCore::WeakMember<T> > {
1056 typedef WebCore::WeakMember<T>* IteratorGetType;
1057 typedef const WebCore::WeakMember<T>* IteratorConstGetType;
1058 typedef WebCore::WeakMember<T>& IteratorReferenceType;
1068 static void store(const U& value, WebCore::WeakMember<T>& storage) { storage = value; }
1070 static PeekOutType peek(const WebCore::WeakMember<T>& value) { return value; }
1071 static PassOutType passOut(const WebCore::WeakMember<T>& value) { return value; }
1072 static bool shouldRemoveFromCollection(WebCore::Visitor* visitor, WebCore::WeakMember<T>& value) { return !visitor->isAlive(value); }
1073 static void traceInCollection(WebCore::Visitor* visitor, WebCore::WeakMember<T>& weakMember, WebCore::ShouldWeakPointersBeMarkedStrongly strongify)
1076 visitor->trace(reinterpret_cast<WebCore::Member<T>&>(weakMember)); // Strongified visit.
1089 template<typename T> struct PtrHash<WebCore::WeakMember<T> > : PtrHash<WebCore::Member<T> > {
1106 template<typename T> struct DefaultHash<WebCore::WeakMember<T> > {
1107 typedef PtrHash<WebCore::WeakMember<T> > Hash;
1120 struct IsWeak<WebCore::WeakMember<T> > {