Home | History | Annotate | Download | only in wtf

Lines Matching defs:m_ptr

32         explicit OwnArrayPtr(T* ptr = 0) : m_ptr(ptr) { }
35 T* get() const { return m_ptr; }
36 T* release() { T* ptr = m_ptr; m_ptr = 0; return ptr; }
38 void set(T* ptr) { ASSERT(m_ptr != ptr); safeDelete(); m_ptr = ptr; }
39 void clear() { safeDelete(); m_ptr = 0; }
41 T& operator*() const { ASSERT(m_ptr); return *m_ptr; }
42 T* operator->() const { ASSERT(m_ptr); return m_ptr; }
44 T& operator[](std::ptrdiff_t i) const { ASSERT(m_ptr); ASSERT(i >= 0); return m_ptr[i]; }
46 bool operator!() const { return !m_ptr; }
50 operator bool() const { return m_ptr; }
53 operator UnspecifiedBoolType() const { return m_ptr ? &OwnArrayPtr::m_ptr : 0; }
56 void swap(OwnArrayPtr& o) { std::swap(m_ptr, o.m_ptr); }
59 void safeDelete() { typedef char known[sizeof(T) ? 1 : -1]; if (sizeof(known)) delete [] m_ptr; }
61 T* m_ptr;