| Index: core/fxcrt/cfx_retain_ptr.h
|
| diff --git a/core/fxcrt/cfx_retain_ptr.h b/core/fxcrt/cfx_retain_ptr.h
|
| index 1b137d4974fb71317ad05e0e750f5b11d4f53a40..f70faf14645e74fc37d7d07357c8aec67a668ed7 100644
|
| --- a/core/fxcrt/cfx_retain_ptr.h
|
| +++ b/core/fxcrt/cfx_retain_ptr.h
|
| @@ -5,11 +5,13 @@
|
| #ifndef CORE_FXCRT_CFX_RETAIN_PTR_H_
|
| #define CORE_FXCRT_CFX_RETAIN_PTR_H_
|
|
|
| +#include <functional>
|
| #include <memory>
|
| #include <utility>
|
|
|
| #include "core/fxcrt/fx_memory.h"
|
|
|
| +// Analogous to base's scoped_refptr.
|
| template <class T>
|
| class CFX_RetainPtr {
|
| public:
|
| @@ -50,9 +52,12 @@ class CFX_RetainPtr {
|
| bool operator==(const CFX_RetainPtr& that) const {
|
| return Get() == that.Get();
|
| }
|
| -
|
| bool operator!=(const CFX_RetainPtr& that) const { return !(*this == that); }
|
|
|
| + bool operator<(const CFX_RetainPtr& that) const {
|
| + return std::less<T*>()(Get(), that.Get());
|
| + }
|
| +
|
| explicit operator bool() const { return !!m_pObj; }
|
| T& operator*() const { return *m_pObj.get(); }
|
| T* operator->() const { return m_pObj.get(); }
|
|
|