Electroneum
testing::internal::linked_ptr< T > Class Template Reference

#include <gtest-linked_ptr.h>

Public Types

typedef T element_type
 
typedef T element_type
 

Public Member Functions

 linked_ptr (T *ptr=NULL)
 
 ~linked_ptr ()
 
template<typename U >
 linked_ptr (linked_ptr< U > const &ptr)
 
 linked_ptr (linked_ptr const &ptr)
 
template<typename U >
linked_ptroperator= (linked_ptr< U > const &ptr)
 
linked_ptroperator= (linked_ptr const &ptr)
 
void reset (T *ptr=NULL)
 
Tget () const
 
Toperator-> () const
 
Toperator* () const
 
bool operator== (T *p) const
 
bool operator!= (T *p) const
 
template<typename U >
bool operator== (linked_ptr< U > const &ptr) const
 
template<typename U >
bool operator!= (linked_ptr< U > const &ptr) const
 
 linked_ptr (T *ptr=NULL)
 
 ~linked_ptr ()
 
template<typename U >
 linked_ptr (linked_ptr< U > const &ptr)
 
 linked_ptr (linked_ptr const &ptr)
 
template<typename U >
linked_ptroperator= (linked_ptr< U > const &ptr)
 
linked_ptroperator= (linked_ptr const &ptr)
 
void reset (T *ptr=NULL)
 
Tget () const
 
Toperator-> () const
 
Toperator* () const
 
bool operator== (T *p) const
 
bool operator!= (T *p) const
 
template<typename U >
bool operator== (linked_ptr< U > const &ptr) const
 
template<typename U >
bool operator!= (linked_ptr< U > const &ptr) const
 

Friends

template<typename U >
class linked_ptr
 
template<typename U>
class linked_ptr
 

Detailed Description

template<typename T>
class testing::internal::linked_ptr< T >

Definition at line 146 of file gtest-linked_ptr.h.

Member Typedef Documentation

◆ element_type [1/2]

template<typename T>
typedef T testing::internal::linked_ptr< T >::element_type

Definition at line 148 of file gtest-linked_ptr.h.

◆ element_type [2/2]

template<typename T>
typedef T testing::internal::linked_ptr< T >::element_type

Definition at line 148 of file gtest-linked_ptr.h.

Constructor & Destructor Documentation

◆ linked_ptr() [1/6]

template<typename T>
testing::internal::linked_ptr< T >::linked_ptr ( T ptr = NULL)
inlineexplicit

Definition at line 152 of file gtest-linked_ptr.h.

152 { capture(ptr); }

◆ ~linked_ptr() [1/2]

template<typename T>
testing::internal::linked_ptr< T >::~linked_ptr ( )
inline

Definition at line 153 of file gtest-linked_ptr.h.

153 { depart(); }

◆ linked_ptr() [2/6]

template<typename T>
template<typename U >
testing::internal::linked_ptr< T >::linked_ptr ( linked_ptr< U > const &  ptr)
inline

Definition at line 156 of file gtest-linked_ptr.h.

156 { copy(&ptr); }
void copy(key &AA, const key &A)
Definition: rctOps.h:79

◆ linked_ptr() [3/6]

template<typename T>
testing::internal::linked_ptr< T >::linked_ptr ( linked_ptr< T > const &  ptr)
inline

Definition at line 157 of file gtest-linked_ptr.h.

157  { // NOLINT
158  assert(&ptr != this);
159  copy(&ptr);
160  }
void copy(key &AA, const key &A)
Definition: rctOps.h:79

◆ linked_ptr() [4/6]

template<typename T>
testing::internal::linked_ptr< T >::linked_ptr ( T ptr = NULL)
inlineexplicit

Definition at line 152 of file gtest-linked_ptr.h.

152 { capture(ptr); }

◆ ~linked_ptr() [2/2]

template<typename T>
testing::internal::linked_ptr< T >::~linked_ptr ( )
inline

Definition at line 153 of file gtest-linked_ptr.h.

153 { depart(); }

◆ linked_ptr() [5/6]

template<typename T>
template<typename U >
testing::internal::linked_ptr< T >::linked_ptr ( linked_ptr< U > const &  ptr)
inline

Definition at line 156 of file gtest-linked_ptr.h.

156 { copy(&ptr); }
void copy(key &AA, const key &A)
Definition: rctOps.h:79

◆ linked_ptr() [6/6]

template<typename T>
testing::internal::linked_ptr< T >::linked_ptr ( linked_ptr< T > const &  ptr)
inline

Definition at line 157 of file gtest-linked_ptr.h.

157  { // NOLINT
158  assert(&ptr != this);
159  copy(&ptr);
160  }
void copy(key &AA, const key &A)
Definition: rctOps.h:79

Member Function Documentation

◆ get() [1/2]

template<typename T>
T* testing::internal::linked_ptr< T >::get ( ) const
inline

Definition at line 182 of file gtest-linked_ptr.h.

182 { return value_; }
Here is the caller graph for this function:

◆ get() [2/2]

template<typename T>
T* testing::internal::linked_ptr< T >::get ( ) const
inline

Definition at line 182 of file gtest-linked_ptr.h.

182 { return value_; }

◆ operator!=() [1/4]

template<typename T>
bool testing::internal::linked_ptr< T >::operator!= ( T p) const
inline

Definition at line 187 of file gtest-linked_ptr.h.

187 { return value_ != p; }

◆ operator!=() [2/4]

template<typename T>
bool testing::internal::linked_ptr< T >::operator!= ( T p) const
inline

Definition at line 187 of file gtest-linked_ptr.h.

187 { return value_ != p; }

◆ operator!=() [3/4]

template<typename T>
template<typename U >
bool testing::internal::linked_ptr< T >::operator!= ( linked_ptr< U > const &  ptr) const
inline

Definition at line 193 of file gtest-linked_ptr.h.

193  {
194  return value_ != ptr.get();
195  }

◆ operator!=() [4/4]

template<typename T>
template<typename U >
bool testing::internal::linked_ptr< T >::operator!= ( linked_ptr< U > const &  ptr) const
inline

Definition at line 193 of file gtest-linked_ptr.h.

193  {
194  return value_ != ptr.get();
195  }

◆ operator*() [1/2]

template<typename T>
T& testing::internal::linked_ptr< T >::operator* ( ) const
inline

Definition at line 184 of file gtest-linked_ptr.h.

184 { return *value_; }

◆ operator*() [2/2]

template<typename T>
T& testing::internal::linked_ptr< T >::operator* ( ) const
inline

Definition at line 184 of file gtest-linked_ptr.h.

184 { return *value_; }

◆ operator->() [1/2]

template<typename T>
T* testing::internal::linked_ptr< T >::operator-> ( ) const
inline

Definition at line 183 of file gtest-linked_ptr.h.

183 { return value_; }

◆ operator->() [2/2]

template<typename T>
T* testing::internal::linked_ptr< T >::operator-> ( ) const
inline

Definition at line 183 of file gtest-linked_ptr.h.

183 { return value_; }

◆ operator=() [1/4]

template<typename T>
template<typename U >
linked_ptr& testing::internal::linked_ptr< T >::operator= ( linked_ptr< U > const &  ptr)
inline

Definition at line 163 of file gtest-linked_ptr.h.

163  {
164  depart();
165  copy(&ptr);
166  return *this;
167  }
void copy(key &AA, const key &A)
Definition: rctOps.h:79

◆ operator=() [2/4]

template<typename T>
template<typename U >
linked_ptr& testing::internal::linked_ptr< T >::operator= ( linked_ptr< U > const &  ptr)
inline

Definition at line 163 of file gtest-linked_ptr.h.

163  {
164  depart();
165  copy(&ptr);
166  return *this;
167  }
void copy(key &AA, const key &A)
Definition: rctOps.h:79

◆ operator=() [3/4]

template<typename T>
linked_ptr& testing::internal::linked_ptr< T >::operator= ( linked_ptr< T > const &  ptr)
inline

Definition at line 169 of file gtest-linked_ptr.h.

169  {
170  if (&ptr != this) {
171  depart();
172  copy(&ptr);
173  }
174  return *this;
175  }
void copy(key &AA, const key &A)
Definition: rctOps.h:79

◆ operator=() [4/4]

template<typename T>
linked_ptr& testing::internal::linked_ptr< T >::operator= ( linked_ptr< T > const &  ptr)
inline

Definition at line 169 of file gtest-linked_ptr.h.

169  {
170  if (&ptr != this) {
171  depart();
172  copy(&ptr);
173  }
174  return *this;
175  }
void copy(key &AA, const key &A)
Definition: rctOps.h:79

◆ operator==() [1/4]

template<typename T>
bool testing::internal::linked_ptr< T >::operator== ( T p) const
inline

Definition at line 186 of file gtest-linked_ptr.h.

186 { return value_ == p; }

◆ operator==() [2/4]

template<typename T>
bool testing::internal::linked_ptr< T >::operator== ( T p) const
inline

Definition at line 186 of file gtest-linked_ptr.h.

186 { return value_ == p; }

◆ operator==() [3/4]

template<typename T>
template<typename U >
bool testing::internal::linked_ptr< T >::operator== ( linked_ptr< U > const &  ptr) const
inline

Definition at line 189 of file gtest-linked_ptr.h.

189  {
190  return value_ == ptr.get();
191  }

◆ operator==() [4/4]

template<typename T>
template<typename U >
bool testing::internal::linked_ptr< T >::operator== ( linked_ptr< U > const &  ptr) const
inline

Definition at line 189 of file gtest-linked_ptr.h.

189  {
190  return value_ == ptr.get();
191  }

◆ reset() [1/2]

template<typename T>
void testing::internal::linked_ptr< T >::reset ( T ptr = NULL)
inline

Definition at line 178 of file gtest-linked_ptr.h.

178  {
179  depart();
180  capture(ptr);
181  }

◆ reset() [2/2]

template<typename T>
void testing::internal::linked_ptr< T >::reset ( T ptr = NULL)
inline

Definition at line 178 of file gtest-linked_ptr.h.

178  {
179  depart();
180  capture(ptr);
181  }

Friends And Related Function Documentation

◆ linked_ptr [1/2]

template<typename T>
template<typename U >
friend class linked_ptr
friend

Definition at line 199 of file gtest-linked_ptr.h.

◆ linked_ptr [2/2]

template<typename T>
template<typename U>
class linked_ptr ( )
friend

Definition at line 199 of file gtest-linked_ptr.h.


The documentation for this class was generated from the following file: