diff -r 666f914201fb -r 2fe1408b6811 epoc32/include/stdapis/boost/multi_array/range_list.hpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/epoc32/include/stdapis/boost/multi_array/range_list.hpp Tue Mar 16 16:12:26 2010 +0000 @@ -0,0 +1,70 @@ +// Copyright 2002 The Trustees of Indiana University. + +// Use, modification and distribution is subject to the Boost Software +// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +// Boost.MultiArray Library +// Authors: Ronald Garcia +// Jeremy Siek +// Andrew Lumsdaine +// See http://www.boost.org/libs/multi_array for documentation. + +#ifndef RANGE_LIST_RG072501_HPP +#define RANGE_LIST_RG072501_HPP +// +// range_list.hpp - helper to build boost::arrays for *_set types +// + +#include "boost/array.hpp" + +namespace boost { +namespace detail { +namespace multi_array { + +///////////////////////////////////////////////////////////////////////// +// choose range list begins +// + +struct choose_range_list_n { + template + struct bind { + typedef boost::array type; + }; +}; + +struct choose_range_list_zero { + template + struct bind { + typedef boost::array type; + }; +}; + + +template +struct range_list_gen_helper { + typedef choose_range_list_n choice; +}; + +template <> +struct range_list_gen_helper<0> { + typedef choose_range_list_zero choice; +}; + +template +struct range_list_generator { +private: + typedef typename range_list_gen_helper::choice Choice; +public: + typedef typename Choice::template bind::type type; +}; + +// +// choose range list ends +///////////////////////////////////////////////////////////////////////// + +} // namespace multi_array +} // namespace detail +} // namespace boost + +#endif // RANGE_LIST_RG072501_HPP