File indexing completed on 2025-01-18 09:31:08
0001
0002
0003
0004
0005
0006
0007
0008 #ifndef BOOST_FUSION_ADAPTED_STRUCT_DETAIL_DEREF_IMPL_HPP
0009 #define BOOST_FUSION_ADAPTED_STRUCT_DETAIL_DEREF_IMPL_HPP
0010
0011 namespace boost { namespace fusion { namespace extension
0012 {
0013 template <typename>
0014 struct deref_impl;
0015
0016 template <>
0017 struct deref_impl<struct_iterator_tag>
0018 {
0019 template <typename It>
0020 struct apply
0021 {
0022 typedef typename
0023 access::struct_member<
0024 typename remove_const<typename It::seq_type>::type
0025 , It::index::value
0026 >::template apply<typename It::seq_type>
0027 impl;
0028
0029 typedef typename impl::type type;
0030
0031 BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0032 static type
0033 call(It const& it)
0034 {
0035 return impl::call(*it.seq);
0036 }
0037 };
0038 };
0039 }}}
0040
0041 #endif