1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- // 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_backward.hpp" header
- // -- DO NOT modify by hand!
- namespace boost { namespace mpl { namespace aux {
- template< long N > struct advance_backward;
- template<>
- struct advance_backward<0>
- {
- template< typename Iterator > struct apply
- {
- typedef Iterator iter0;
- typedef iter0 type;
- };
- };
- template<>
- struct advance_backward<1>
- {
- template< typename Iterator > struct apply
- {
- typedef Iterator iter0;
- typedef typename prior<iter0>::type iter1;
- typedef iter1 type;
- };
- };
- template<>
- struct advance_backward<2>
- {
- template< typename Iterator > struct apply
- {
- typedef Iterator iter0;
- typedef typename prior<iter0>::type iter1;
- typedef typename prior<iter1>::type iter2;
- typedef iter2 type;
- };
- };
- template<>
- struct advance_backward<3>
- {
- template< typename Iterator > struct apply
- {
- typedef Iterator iter0;
- typedef typename prior<iter0>::type iter1;
- typedef typename prior<iter1>::type iter2;
- typedef typename prior<iter2>::type iter3;
- typedef iter3 type;
- };
- };
- template<>
- struct advance_backward<4>
- {
- template< typename Iterator > struct apply
- {
- typedef Iterator iter0;
- typedef typename prior<iter0>::type iter1;
- typedef typename prior<iter1>::type iter2;
- typedef typename prior<iter2>::type iter3;
- typedef typename prior<iter3>::type iter4;
- typedef iter4 type;
- };
- };
- template< long N >
- struct advance_backward
- {
- template< typename Iterator > struct apply
- {
- typedef typename apply_wrap1<
- advance_backward<4>
- , Iterator
- >::type chunk_result_;
- typedef typename apply_wrap1<
- advance_backward<(
- (N - 4) < 0
- ? 0
- : N - 4
- )>
- , chunk_result_
- >::type type;
- };
- };
- }}}
|