1 /*============================================================================= 2 Copyright (c) 2007 Tobias Schwinger 3 4 Distributed under the Boost Software License, Version 1.0. (See accompanying 5 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 6 ==============================================================================*/ 7 8 #if !defined(BOOST_FUSION_REPETITIVE_VIEW_VALUE_OF_IMPL_HPP_INCLUDED) 9 #define BOOST_FUSION_REPETITIVE_VIEW_VALUE_OF_IMPL_HPP_INCLUDED 10 11 #include <boost/fusion/support/config.hpp> 12 #include <boost/fusion/iterator/value_of.hpp> 13 14 namespace boost { namespace fusion 15 { 16 struct repetitive_view_iterator_tag; 17 18 namespace extension 19 { 20 template<typename Tag> 21 struct value_of_impl; 22 23 template<> 24 struct value_of_impl<repetitive_view_iterator_tag> 25 { 26 template<typename Iterator> 27 struct apply 28 : result_of::value_of<typename Iterator::pos_type> 29 { }; 30 }; 31 } 32 }} 33 34 #endif 35 36