/Src/Dependencies/Boost/boost/mpl/aux_/preprocessed/plain/advance_forward.hpp
http://hadesmem.googlecode.com/ · C++ Header · 97 lines · 77 code · 12 blank · 8 comment · 0 complexity · 4104d3628aa415e7d085d55fa3c75cb2 MD5 · raw file
- // Copyright Aleksey Gurtovoy 2000-2004
- //
- // Distributed under 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)
- //
- // Preprocessed version of "boost/mpl/aux_/advance_forward.hpp" header
- // -- DO NOT modify by hand!
- namespace boost { namespace mpl { namespace aux {
- template< long N > struct advance_forward;
- template<>
- struct advance_forward<0>
- {
- template< typename Iterator > struct apply
- {
- typedef Iterator iter0;
- typedef iter0 type;
- };
- };
- template<>
- struct advance_forward<1>
- {
- template< typename Iterator > struct apply
- {
- typedef Iterator iter0;
- typedef typename next<iter0>::type iter1;
- typedef iter1 type;
- };
- };
- template<>
- struct advance_forward<2>
- {
- template< typename Iterator > struct apply
- {
- typedef Iterator iter0;
- typedef typename next<iter0>::type iter1;
- typedef typename next<iter1>::type iter2;
- typedef iter2 type;
- };
- };
- template<>
- struct advance_forward<3>
- {
- template< typename Iterator > struct apply
- {
- typedef Iterator iter0;
- typedef typename next<iter0>::type iter1;
- typedef typename next<iter1>::type iter2;
- typedef typename next<iter2>::type iter3;
- typedef iter3 type;
- };
- };
- template<>
- struct advance_forward<4>
- {
- template< typename Iterator > struct apply
- {
- typedef Iterator iter0;
- typedef typename next<iter0>::type iter1;
- typedef typename next<iter1>::type iter2;
- typedef typename next<iter2>::type iter3;
- typedef typename next<iter3>::type iter4;
- typedef iter4 type;
- };
- };
- template< long N >
- struct advance_forward
- {
- template< typename Iterator > struct apply
- {
- typedef typename apply_wrap1<
- advance_forward<4>
- , Iterator
- >::type chunk_result_;
- typedef typename apply_wrap1<
- advance_forward<(
- (N - 4) < 0
- ? 0
- : N - 4
- )>
- , chunk_result_
- >::type type;
- };
- };
- }}}