Changeset 62674 in webkit for trunk/JavaScriptCore/wtf/PassRefPtr.h
- Timestamp:
- Jul 7, 2010, 9:07:29 AM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/wtf/PassRefPtr.h
r62213 r62674 77 77 T* get() const { return m_ptr; } 78 78 79 void clear() { T* ptr = m_ptr; derefIfNotNull(ptr); m_ptr = 0; }79 void clear(); 80 80 T* leakRef() const; 81 81 … … 152 152 T* get() const { return m_ptr; } 153 153 154 void clear() { derefIfNotNull(m_ptr); m_ptr = 0; }155 T* releaseRef() const { T* tmp = m_ptr; m_ptr = 0; return tmp; }154 void clear(); 155 T* leakRef() const { T* tmp = m_ptr; m_ptr = 0; return tmp; } 156 156 157 157 T& operator*() const { return *m_ptr; } 158 158 T* operator->() const { return m_ptr; } 159 160 // FIXME: Remove releaseRef once we change all callers to call leakRef instead. 161 T* releaseRef() const { return leakRef(); } 159 162 160 163 private: … … 169 172 } 170 173 174 template<typename T> inline void PassRefPtr<T>::clear() 175 { 176 T* ptr = m_ptr; 177 m_ptr = 0; 178 derefIfNotNull(ptr); 179 } 180 171 181 template<typename T> inline T* PassRefPtr<T>::leakRef() const 172 182 { … … 280 290 { 281 291 return p.get(); 292 } 293 294 template<typename T> inline void NonNullPassRefPtr<T>::clear() 295 { 296 T* ptr = m_ptr; 297 m_ptr = 0; 298 derefIfNotNull(ptr); 282 299 } 283 300
Note:
See TracChangeset
for help on using the changeset viewer.