Range-v3
Range algorithms, views, and actions for the Standard Library
ranges::any Struct Reference

Public Member Functions

 any (any &&) noexcept=default
 
 any (any const &that)
 
template<typename TRef , typename T = detail::decay_t<TRef>>
requires copyable<T> && (!same_as<T, any>)
 any (TRef &&t)
 
void clear () noexcept
 
bool empty () const noexcept
 
anyoperator= (any &&) noexcept=default
 
anyoperator= (any const &that)
 
template<typename TRef , typename T = detail::decay_t<TRef>>
requires copyable<T> && (!same_as<T, any>)
anyoperator= (TRef &&t)
 
void swap (any &that) noexcept
 
std::type_info const & type () const noexcept
 

Friends

template<typename T >
meta::if_c< std::is_reference< T >()||(bool) copyable< T >, T > any_cast (any &&)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
template<typename T >
meta::if_c< std::is_reference< T >()||(bool) copyable< T >, T > any_cast (any &)
 
template<typename T >
T * any_cast (any *) noexcept
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
template<typename T >
meta::if_c< std::is_reference< T >()||(bool) copyable< T >, T > any_cast (any const &)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
template<typename T >
T const * any_cast (any const *) noexcept
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
void swap (any &x, any &y) noexcept
 

Friends And Related Function Documentation

◆ any_cast

template<typename T >
meta::if_c< std::is_reference< T >()||(bool) copyable< T >, T > any_cast ( any x)
friend
Exceptions
bad_any_cast