Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2024-11-16 09:08:08

0001 /*=============================================================================
0002     Copyright (c) 2010 Christopher Schmidt
0003 
0004     Distributed under the Boost Software License, Version 1.0. (See accompanying 
0005     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0006 ==============================================================================*/
0007 
0008 #ifndef BOOST_FUSION_ADAPTED_ARRAY_BEGIN_IMPL_HPP
0009 #define BOOST_FUSION_ADAPTED_ARRAY_BEGIN_IMPL_HPP
0010 
0011 #include <boost/fusion/support/config.hpp>
0012 #include <boost/fusion/iterator/basic_iterator.hpp>
0013 
0014 namespace boost { namespace fusion { namespace extension
0015 {
0016     template<typename>
0017     struct begin_impl;
0018 
0019     template <>
0020     struct begin_impl<po_array_tag>
0021     {
0022         template <typename Seq>
0023         struct apply
0024         {
0025             typedef
0026                 basic_iterator<
0027                     po_array_iterator_tag
0028                   , random_access_traversal_tag
0029                   , Seq
0030                   , 0
0031                 >
0032             type;
0033 
0034             BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0035             static type
0036             call(Seq& seq)
0037             {
0038                 return type(seq,0);
0039             }
0040         };
0041     };
0042 }}}
0043 
0044 #endif