os/ossrv/ossrv_pub/boost_apis/boost/mpl/range_c.hpp
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     1 
     2 #ifndef BOOST_MPL_RANGE_C_HPP_INCLUDED
     3 #define BOOST_MPL_RANGE_C_HPP_INCLUDED
     4 
     5 // Copyright Aleksey Gurtovoy 2000-2004
     6 //
     7 // Distributed under the Boost Software License, Version 1.0. 
     8 // (See accompanying file LICENSE_1_0.txt or copy at 
     9 // http://www.boost.org/LICENSE_1_0.txt)
    10 //
    11 // See http://www.boost.org/libs/mpl for documentation.
    12 
    13 // $Source: /cvsroot/boost/boost/boost/mpl/range_c.hpp,v $
    14 // $Date: 2004/11/28 01:57:09 $
    15 // $Revision: 1.5 $
    16 
    17 #include <boost/mpl/integral_c.hpp>
    18 #include <boost/mpl/aux_/range_c/front.hpp>
    19 #include <boost/mpl/aux_/range_c/back.hpp>
    20 #include <boost/mpl/aux_/range_c/size.hpp>
    21 #include <boost/mpl/aux_/range_c/O1_size.hpp>
    22 #include <boost/mpl/aux_/range_c/empty.hpp>
    23 #include <boost/mpl/aux_/range_c/iterator.hpp>
    24 #include <boost/mpl/aux_/range_c/tag.hpp>
    25 
    26 namespace boost { namespace mpl {
    27 
    28 template<
    29       typename T
    30     , T Start
    31     , T Finish
    32     >
    33 struct range_c
    34 {
    35     typedef aux::half_open_range_tag tag;
    36     typedef T value_type;
    37     typedef range_c type;
    38 
    39     typedef integral_c<T,Start> start;
    40     typedef integral_c<T,Finish> finish;
    41 
    42     typedef r_iter<start> begin;
    43     typedef r_iter<finish> end;
    44 };
    45 
    46 }}
    47 
    48 #endif // BOOST_MPL_RANGE_C_HPP_INCLUDED