struct ArenaPtrCmpBase

Defined at line 857 of file ../../third_party/protobuf/src/src/google/protobuf/arena.h

Comparison base to inject relational operators in UniquePtr and Ptr.

We use a base class to facilitate symmetric relational operators with

UniquePtr, Ptr, T* and nullptr.

Public Methods

template <typename T>
T * Unpack (T * ptr)

Defined at line 859 of file ../../third_party/protobuf/src/src/google/protobuf/arena.h

template <typename T>
auto Unpack (const typename Arena::UniquePtr<T> & ptr)

Defined at line 864 of file ../../third_party/protobuf/src/src/google/protobuf/arena.h

template <typename T>
auto Unpack (const typename Arena::template Ptr<T> & ptr)

Defined at line 870 of file ../../third_party/protobuf/src/src/google/protobuf/arena.h

std::nullptr_t Unpack (std::nullptr_t )

Defined at line 875 of file ../../third_party/protobuf/src/src/google/protobuf/arena.h

Friends

template <typename LHS, typename RHS>
decltype(lhs == rhs) ArenaPtrCmpBase (const LHS & lhs, const RHS & rhs)
template <typename LHStypename RHS>
decltype(Unpack(lhs) == Unpack(rhs)) ArenaPtrCmpBase (const LHS & lhsconst RHS & rhs)