68 #ifndef GTEST_INCLUDE_GTEST_INTERNAL_GTEST_LINKED_PTR_H_ 69 #define GTEST_INCLUDE_GTEST_INTERNAL_GTEST_LINKED_PTR_H_ 113 while (p->next_ != ptr) p = p->next_;
124 if (next_ ==
this)
return true;
126 while (p->next_ !=
this) p = p->next_;
135 template <
typename T>
148 assert(&ptr !=
this);
172 T*
get()
const {
return value_; }
178 bool last = link_.depart();
187 template <
typename U>
189 return value_ == ptr.
get();
191 template <
typename U>
193 return value_ != ptr.
get();
197 template <
typename U>
204 if (link_.
depart())
delete value_;
207 void capture(
T* ptr) {
215 link_.
join(&ptr->link_);
221 template<
typename T>
inline 223 return ptr == x.
get();
226 template<
typename T>
inline 228 return ptr != x.
get();
234 template <
typename T>
242 #endif // GTEST_INCLUDE_GTEST_INTERNAL_GTEST_LINKED_PTR_H_
Definition: gtest-port.h:1220
Definition: testutils.h:40
def copy(src_path, out_dir, rel_path)
Definition: blink-import.py:86
linked_ptr(linked_ptr< U > const &ptr)
Definition: gtest-linked_ptr.h:146
DOMString p
Definition: WebCryptoAPI.idl:116
linked_ptr(linked_ptr const &ptr)
Definition: gtest-linked_ptr.h:147
bool operator!=(T *p) const
Definition: gtest-linked_ptr.h:186
bool operator==(T *ptr, const linked_ptr< T > &x)
Definition: gtest-linked_ptr.h:222
#define GTEST_API_
Definition: gtest-port.h:615
void reset(T *ptr=NULL)
Definition: gtest-linked_ptr.h:168
~linked_ptr()
Definition: gtest-linked_ptr.h:143
WEBCORE_EXPORT Node * last(const ContainerNode &)
Definition: NodeTraversal.cpp:106
T & operator*() const
Definition: gtest-linked_ptr.h:174
TestSubObjConstructor T
Definition: TestTypedefs.idl:84
Definition: gtest-linked_ptr.h:136
EGLSurface EGLint x
Definition: eglext.h:950
bool operator==(T *p) const
Definition: gtest-linked_ptr.h:185
linked_ptr & operator=(linked_ptr< U > const &ptr)
Definition: gtest-linked_ptr.h:153
const GLfloat * v
Definition: gl2.h:514
Definition: gtest-linked_ptr.h:89
linked_ptr< T > make_linked_ptr(T *ptr)
Definition: gtest-linked_ptr.h:235
Definition: document.h:393
linked_ptr(T *ptr=NULL)
Definition: gtest-linked_ptr.h:142
T * operator->() const
Definition: gtest-linked_ptr.h:173
bool depart()
Definition: gtest-linked_ptr.h:121
#define NULL
Definition: common_types.h:41
bool operator==(linked_ptr< U > const &ptr) const
Definition: gtest-linked_ptr.h:188
GTEST_API_ GTEST_DECLARE_STATIC_MUTEX_(g_linked_ptr_mutex)
void join(linked_ptr_internal const *ptr)
Definition: gtest-linked_ptr.h:109
void join_new()
Definition: gtest-linked_ptr.h:92
T * get() const
Definition: gtest-linked_ptr.h:172
bool operator!=(T *ptr, const linked_ptr< T > &x)
Definition: gtest-linked_ptr.h:227
T * release()
Definition: gtest-linked_ptr.h:177
linked_ptr & operator=(linked_ptr const &ptr)
Definition: gtest-linked_ptr.h:159
T element_type
Definition: gtest-linked_ptr.h:138
bool operator!=(linked_ptr< U > const &ptr) const
Definition: gtest-linked_ptr.h:192