]> git.lyx.org Git - lyx.git/blob - 3rdparty/boost/boost/fusion/view/iterator_range/detail/begin_impl.hpp
Update to boost 1.72
[lyx.git] / 3rdparty / boost / boost / fusion / view / iterator_range / detail / begin_impl.hpp
1 /*=============================================================================
2     Copyright (c) 2001-2011 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_BEGIN_IMPL_05062005_1226)
8 #define FUSION_BEGIN_IMPL_05062005_1226
9
10 #include <boost/fusion/support/config.hpp>
11
12 namespace boost { namespace fusion
13 {
14     struct iterator_range_tag;
15
16     namespace extension
17     {
18         template <typename Tag>
19         struct begin_impl;
20
21         template <>
22         struct begin_impl<iterator_range_tag>
23         {
24             template <typename Sequence>
25             struct apply
26             {
27                 typedef typename Sequence::begin_type type;
28
29                 BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
30                 static type
31                 call(Sequence& s)
32                 {
33                     return s.first;
34                 }
35             };
36         };
37     }
38 }}
39
40 #endif
41
42