Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:41:55

0001 
0002 #ifndef BOOST_MPL_VECTOR_AUX_VECTOR0_HPP_INCLUDED
0003 #define BOOST_MPL_VECTOR_AUX_VECTOR0_HPP_INCLUDED
0004 
0005 // Copyright Aleksey Gurtovoy 2000-2004
0006 //
0007 // Distributed under the Boost Software License, Version 1.0. 
0008 // (See accompanying file LICENSE_1_0.txt or copy at 
0009 // http://www.boost.org/LICENSE_1_0.txt)
0010 //
0011 // See http://www.boost.org/libs/mpl for documentation.
0012 
0013 // $Id$
0014 // $Date$
0015 // $Revision$
0016 
0017 #include <boost/mpl/long.hpp>
0018 #include <boost/mpl/void.hpp>
0019 #include <boost/mpl/aux_/na.hpp>
0020 #include <boost/mpl/aux_/type_wrapper.hpp>
0021 
0022 #include <boost/mpl/vector/aux_/iterator.hpp>
0023 #include <boost/mpl/vector/aux_/tag.hpp>
0024 #include <boost/mpl/aux_/config/typeof.hpp>
0025 
0026 namespace boost { namespace mpl {
0027 
0028 template< typename Dummy = na > struct vector0;
0029 
0030 template<> struct vector0<na>
0031 {
0032 #if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
0033     typedef aux::vector_tag tag;
0034     typedef vector0         type;
0035     typedef long_<32768>    lower_bound_;
0036     typedef lower_bound_    upper_bound_;
0037     typedef long_<0>        size;
0038 
0039     static aux::type_wrapper<void_> item_(...);
0040 #else
0041     typedef aux::vector_tag<0> tag;
0042     typedef vector0 type;
0043     typedef void_ item0;
0044     
0045     typedef v_iter<vector0<>,0> begin;
0046     typedef v_iter<vector0<>,0> end;
0047 #endif
0048 };
0049 
0050 }}
0051 
0052 #endif // BOOST_MPL_VECTOR_AUX_VECTOR0_HPP_INCLUDED