File indexing completed on 2025-01-18 09:34:43
0001
0002
0003
0004
0005
0006
0007
0008 #if !defined(FUSION_SEQUENCE_BASE_04182005_0737)
0009 #define FUSION_SEQUENCE_BASE_04182005_0737
0010
0011 #include <boost/config.hpp>
0012 #include <boost/fusion/support/config.hpp>
0013 #include <boost/mpl/begin_end_fwd.hpp>
0014
0015 namespace boost { namespace fusion
0016 {
0017 namespace detail
0018 {
0019 struct from_sequence_convertible_type
0020 {};
0021 }
0022
0023 template <typename Sequence>
0024 struct sequence_base
0025 {
0026 BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0027 Sequence const&
0028 derived() const BOOST_NOEXCEPT
0029 {
0030 return static_cast<Sequence const&>(*this);
0031 }
0032
0033 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0034 Sequence&
0035 derived() BOOST_NOEXCEPT
0036 {
0037 return static_cast<Sequence&>(*this);
0038 }
0039
0040 BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0041 operator detail::from_sequence_convertible_type() const BOOST_NOEXCEPT
0042 {
0043 return detail::from_sequence_convertible_type();
0044 }
0045 };
0046
0047 struct fusion_sequence_tag;
0048 }}
0049
0050 namespace boost { namespace mpl
0051 {
0052
0053
0054
0055
0056 template<> struct begin_impl< boost::fusion::fusion_sequence_tag >;
0057 }}
0058
0059 #endif