Lines Matching refs:StructPtr
30 class StructPtr {
34 StructPtr() : ptr_(nullptr) {} in StructPtr() function
35 StructPtr(decltype(nullptr)) : ptr_(nullptr) {} in StructPtr() function
37 ~StructPtr() { delete ptr_; } in ~StructPtr()
39 StructPtr& operator=(decltype(nullptr)) { in decltype()
44 StructPtr(StructPtr&& other) : ptr_(nullptr) { Take(&other); } in StructPtr() function
45 StructPtr& operator=(StructPtr&& other) {
52 return TypeConverter<U, StructPtr>::Convert(*this); in To()
74 void Swap(StructPtr* other) { std::swap(ptr_, other->ptr_); } in Swap()
79 StructPtr Clone() const { return is_null() ? StructPtr() : ptr_->Clone(); } in Clone()
81 bool Equals(const StructPtr& other) const { in Equals()
89 typedef Struct* StructPtr::*Testable;
92 operator Testable() const { return ptr_ ? &StructPtr::ptr_ : 0; } in Testable()
100 bool operator==(const StructPtr<T>& other) const = delete;
102 bool operator!=(const StructPtr<T>& other) const = delete;
109 void Take(StructPtr* other) { in Take()
116 DISALLOW_COPY_AND_ASSIGN(StructPtr);