#include <typeinfo>
#include <type_traits>
#include <stdexcept>
Go to the source code of this file.
Classes | |
class | linb::any |
class | linb::bad_any_cast |
struct | linb::any::requires_allocation< T > |
Whether the type T must be dynamically allocated or can be stored on the stack. More... | |
union | linb::any::storage_union |
struct | linb::any::vtable_dynamic< T > |
VTable for dynamically allocated storage. More... | |
struct | linb::any::vtable_stack< T > |
VTable for stack allocated storage. More... | |
struct | linb::any::vtable_type |
Base VTable specification. More... | |
Namespaces | |
linb | |
linb::detail | |
std | |
Functions | |
template<typename ValueType > | |
ValueType | linb::any_cast (any &&operand) |
template<typename ValueType > | |
ValueType | linb::any_cast (any &operand) |
Performs *any_cast<remove_reference_t<ValueType>>(&operand), or throws bad_any_cast on failure. More... | |
template<typename T > | |
T * | linb::any_cast (any *operand) noexcept |
template<typename ValueType > | |
ValueType | linb::any_cast (const any &operand) |
Performs *any_cast<add_const_t<remove_reference_t<ValueType>>>(&operand), or throws bad_any_cast on failure. More... | |
template<typename T > | |
const T * | linb::any_cast (const any *operand) noexcept |
template<typename ValueType > | |
ValueType | linb::detail::any_cast_move_if_true (typename std::remove_reference< ValueType >::type *p, std::false_type) |
template<typename ValueType > | |
ValueType | linb::detail::any_cast_move_if_true (typename std::remove_reference< ValueType >::type *p, std::true_type) |
void | std::swap (linb::any &lhs, linb::any &rhs) noexcept |