Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:33:20

0001 /*=============================================================================
0002     Copyright (c) 2001-2011 Joel de Guzman
0003     Copyright (c) 2005, 2014 Eric Niebler
0004 
0005     Distributed under the Boost Software License, Version 1.0. (See accompanying 
0006     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0007 ==============================================================================*/
0008 #if !defined(FUSION_NIL_04232014_0843)
0009 #define FUSION_NIL_04232014_0843
0010 
0011 #include <boost/fusion/support/config.hpp>
0012 #include <boost/fusion/container/list/cons_fwd.hpp>
0013 #include <boost/fusion/support/sequence_base.hpp>
0014 #include <boost/mpl/int.hpp>
0015 #include <boost/mpl/bool.hpp>
0016 
0017 namespace boost { namespace fusion
0018 {
0019     struct void_;
0020     struct cons_tag;
0021     struct forward_traversal_tag;
0022     struct fusion_sequence_tag;
0023 
0024     struct nil_ : sequence_base<nil_>
0025     {
0026         typedef mpl::int_<0> size;
0027         typedef cons_tag fusion_tag;
0028         typedef fusion_sequence_tag tag; // this gets picked up by MPL
0029         typedef mpl::false_ is_view;
0030         typedef forward_traversal_tag category;
0031         typedef void_ car_type;
0032         typedef void_ cdr_type;
0033 
0034         BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0035         nil_() BOOST_NOEXCEPT {}
0036 
0037         template <typename Iterator>
0038         BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0039         nil_(Iterator const& /*iter*/, mpl::true_ /*this_is_an_iterator*/) BOOST_NOEXCEPT
0040         {}
0041 
0042         template <typename Iterator>
0043         BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0044         void assign_from_iter(Iterator const& /*iter*/) BOOST_NOEXCEPT
0045         {
0046         }
0047     };
0048 }}
0049 
0050 #endif
0051