|
| template<class Visitor , class Variant > |
| auto | Si::apply_visitor (Visitor &&visitor, Variant &&variant) -> typename std::decay< Visitor >::type::result_type |
| |
| template<class T > |
| void | Si::detail::destroy_storage (void *storage) BOOST_NOEXCEPT |
| |
| template<class T > |
| void | Si::detail::move_construct_storage (void *destination, void *source) BOOST_NOEXCEPT |
| |
| template<class T > |
| void | Si::detail::copy_construct_storage (void *destination, void const *source) |
| |
| template<class T > |
| void | Si::detail::move_storage (void *destination, void *source) BOOST_NOEXCEPT |
| |
| template<class T > |
| void | Si::detail::copy_storage (void *destination, void const *source) |
| |
| template<class T > |
| bool | Si::detail::equals (void const *left, void const *right) |
| |
| template<class T > |
| bool | Si::detail::less (void const *left, void const *right) |
| |
| template<class Visitor , class T , class Result > |
| Result | Si::detail::apply_visitor_impl (Visitor &&visitor, void *element) |
| |
| template<class Visitor , class T , class Result > |
| Result | Si::detail::apply_visitor_const_impl (Visitor &&visitor, void const *element) |
| |
| | Si::detail::BOOST_STATIC_ASSERT (are_copyable<>::value) |
| |
| | Si::detail::BOOST_STATIC_ASSERT (are_copyable< int >::value) |
| |
| | Si::detail::BOOST_STATIC_ASSERT ((are_copyable< int, float >::value)) |
| |
| template<bool IsCopyable, class... T> |
| std::ostream & | Si::detail::operator<< (std::ostream &out, variant_base< IsCopyable, T... > const &v) |
| |
| | Si::BOOST_STATIC_ASSERT (is_handle< variant< int >>::value) |
| |
| | Si::BOOST_STATIC_ASSERT ((is_handle< variant< int, nothing >>::value)) |
| |
| template<class... T> |
| bool | Si::operator!= (variant< T... > const &left, variant< T... > const &right) |
| |
| template<class... T> |
| bool | Si::operator> (variant< T... > const &left, variant< T... > const &right) |
| |
| template<class... T> |
| bool | Si::operator<= (variant< T... > const &left, variant< T... > const &right) |
| |
| template<class... T> |
| bool | Si::operator>= (variant< T... > const &left, variant< T... > const &right) |
| |
| template<class Element , class... T> |
| boost::optional< Element > | Si::try_get (variant< T... > &from) |
| |
| template<class Element , class... T> |
| Element * | Si::try_get_ptr (variant< T... > &from) BOOST_NOEXCEPT |
| |
| template<class Element , class... T> |
| std::add_const< Element >::type * | Si::try_get_ptr (variant< T... > const &from) BOOST_NOEXCEPT |
| |
| template<class Result , class... T, class... Visitors> |
| Result | Si::visit (variant< T... > &variant, Visitors &&...visitors) |
| |
| template<class Result , class... T, class... Visitors> |
| Result | Si::visit (variant< T... > const &variant, Visitors &&...visitors) |
| |
| | BOOST_STATIC_ASSERT (sizeof(Si::variant< boost::uint32_t >)==(2 *sizeof(boost::uint32_t))) |
| |
| | BOOST_STATIC_ASSERT (sizeof(Si::variant< int * >)==(sizeof(boost::uint32_t)+sizeof(int *))) |
| |
| | BOOST_STATIC_ASSERT (sizeof(Si::variant< std::hash< Si::variant< int >>>)==sizeof(boost::uint32_t)) |
| |