Robust method for extracting the underlying template type

This commit is contained in:
Vinnie Falco
2013-08-10 03:27:24 -07:00
parent 95ec3f4db5
commit c202386a79

View File

@@ -38,7 +38,10 @@ class SocketWrapper
, protected SocketWrapperBasics
{
public:
typedef typename boost::remove_reference <Object>::type ObjectType;
typedef typename boost::remove_pointer <
typename boost::remove_reference <
typename boost::remove_cv <Object>::type >::type >::type
ObjectType;
SocketWrapper (Object& object) noexcept
: m_impl (&object)