1 #ifndef BOOST_CORE_REF_HPP 2 #define BOOST_CORE_REF_HPP 6 #if defined(_MSC_VER) && (_MSC_VER >= 1020) 42 #if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, == 1600 ) 44 struct ref_workaround_tag {};
75 #if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, == 1600 ) 81 #if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) 118 #if defined( __BORLANDC__ ) && BOOST_WORKAROUND( __BORLANDC__, BOOST_TESTED_AT(0x581) ) 119 # define BOOST_REF_CONST 121 # define BOOST_REF_CONST const 133 #if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, == 1600 ) 155 #undef BOOST_REF_CONST 157 #if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) 162 #if defined(BOOST_NO_CXX11_DELETED_FUNCTIONS) 163 # define BOOST_REF_DELETE 165 # define BOOST_REF_DELETE = delete 174 template<
class T>
void ref(
T const&&) BOOST_REF_DELETE;
179 template<
class T>
void cref(
T const&&) BOOST_REF_DELETE;
181 #undef BOOST_REF_DELETE 207 #if !defined(BOOST_NO_CV_SPECIALIZATIONS) 224 #endif // !defined(BOOST_NO_CV_SPECIALIZATIONS) 252 #if !defined(BOOST_NO_CV_SPECIALIZATIONS) 259 template<
typename T>
struct unwrap_reference< reference_wrapper<T> volatile >
264 template<
typename T>
struct unwrap_reference< reference_wrapper<T> const volatile >
269 #endif // !defined(BOOST_NO_CV_SPECIALIZATIONS) 301 #endif // #ifndef BOOST_CORE_REF_HPP Determine if a type T is an instantiation of reference_wrapper.
BOOST_FORCEINLINE T * addressof(T &v)
BOOST_DEDUCED_TYPENAME optional< T >::pointer_const_type get_pointer(optional< T > const &opt)
#define BOOST_DELETED_FUNCTION(fun)
BOOST_FORCEINLINE reference_wrapper< T const > BOOST_REF_CONST cref(T const &t)
BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE.
BOOST_FORCEINLINE T * get_pointer() const
BOOST_FORCEINLINE reference_wrapper< T > BOOST_REF_CONST ref(T &t)
Contains a reference to an object of type T.
BOOST_FORCEINLINE unwrap_reference< T >::type & unwrap_ref(T &t)
#define BOOST_FORCEINLINE
#define BOOST_STATIC_CONSTANT(type, assignment)
BOOST_FORCEINLINE reference_wrapper(T &t)
Find the type in a reference_wrapper.