Back to home page

EIC code displayed by LXR

 
 

    


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

0001 
0002 #ifndef BOOST_MPL_EMPTY_SEQUENCE_HPP_INCLUDED
0003 #define BOOST_MPL_EMPTY_SEQUENCE_HPP_INCLUDED
0004 
0005 // Copyright Aleksey Gurtovoy 2004
0006 // Copyright Alexander Nasonov 2004
0007 //
0008 // Distributed under the Boost Software License, Version 1.0. 
0009 // (See accompanying file LICENSE_1_0.txt or copy at 
0010 // http://www.boost.org/LICENSE_1_0.txt)
0011 //
0012 // See http://www.boost.org/libs/mpl for documentation.
0013 
0014 // $Id$
0015 // $Date$
0016 // $Revision$
0017 
0018 #include <boost/mpl/size_fwd.hpp>
0019 #include <boost/mpl/int.hpp>
0020 #include <boost/mpl/iterator_tags.hpp>
0021 
0022 namespace boost { namespace mpl {
0023 
0024 struct empty_sequence
0025 {
0026     struct tag;
0027     typedef empty_sequence type;
0028     struct begin { typedef random_access_iterator_tag category; };    
0029     typedef begin end;
0030 };
0031 
0032 template<>
0033 struct size_impl<empty_sequence::tag>
0034 {
0035     template< typename Sequence > struct apply
0036         : int_<0>
0037     {
0038     };
0039 };
0040 
0041 }}
0042 
0043 #endif // #ifndef BOOST_MPL_EMPTY_SEQUENCE_HPP_INCLUDED