1 /*=============================================================================
2     Copyright (c) 2001-2006 Joel de Guzman
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 #if !defined(FUSION_VALUE_IMPL_05052005_0324)
8 #define FUSION_VALUE_IMPL_05052005_0324
9 
10 namespace boost { namespace fusion
11 {
12     struct single_view_iterator_tag;
13 
14     namespace extension
15     {
16         template <typename Tag>
17         struct value_of_impl;
18 
19         template <>
20         struct value_of_impl<single_view_iterator_tag>
21         {
22             template <typename Iterator>
23             struct apply
24             {
25                 typedef typename Iterator::single_view_type single_view_type;
26                 typedef typename single_view_type::value_type type;
27             };
28         };
29     }
30 }}
31 
32 #endif
33 
34 
35