]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/fusion/container/list/nil.hpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / boost / fusion / container / list / nil.hpp
1 /*=============================================================================
2 Copyright (c) 2001-2011 Joel de Guzman
3 Copyright (c) 2005, 2014 Eric Niebler
4
5 Distributed under the Boost Software License, Version 1.0. (See accompanying
6 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 ==============================================================================*/
8 #if !defined(FUSION_NIL_04232014_0843)
9 #define FUSION_NIL_04232014_0843
10
11 #include <boost/fusion/support/config.hpp>
12 #include <boost/fusion/container/list/cons_fwd.hpp>
13 #include <boost/fusion/support/sequence_base.hpp>
14 #include <boost/mpl/int.hpp>
15 #include <boost/mpl/bool.hpp>
16
17 namespace boost { namespace fusion
18 {
19 struct void_;
20 struct cons_tag;
21 struct forward_traversal_tag;
22 struct fusion_sequence_tag;
23
24 struct nil_ : sequence_base<nil_>
25 {
26 typedef mpl::int_<0> size;
27 typedef cons_tag fusion_tag;
28 typedef fusion_sequence_tag tag; // this gets picked up by MPL
29 typedef mpl::false_ is_view;
30 typedef forward_traversal_tag category;
31 typedef void_ car_type;
32 typedef void_ cdr_type;
33
34 BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
35 nil_() BOOST_NOEXCEPT {}
36
37 template <typename Iterator>
38 BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
39 nil_(Iterator const& /*iter*/, mpl::true_ /*this_is_an_iterator*/) BOOST_NOEXCEPT
40 {}
41
42 template <typename Iterator>
43 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
44 void assign_from_iter(Iterator const& /*iter*/) BOOST_NOEXCEPT
45 {
46 }
47 };
48 }}
49
50 #endif
51