Mercurial > hg > vamp-build-and-test
annotate DEPENDENCIES/generic/include/boost/range/adaptor/argument_fwd.hpp @ 125:34e428693f5d vext
Vext -> Repoint
author | Chris Cannam |
---|---|
date | Thu, 14 Jun 2018 11:15:39 +0100 |
parents | 2665513ce2d3 |
children |
rev | line source |
---|---|
Chris@16 | 1 // Boost.Range library |
Chris@16 | 2 // |
Chris@16 | 3 // Copyright Thorsten Ottosen, Neil Groves 2006 - 2008. Use, modification and |
Chris@16 | 4 // distribution is subject to the Boost Software License, Version |
Chris@16 | 5 // 1.0. (See accompanying file LICENSE_1_0.txt or copy at |
Chris@16 | 6 // http://www.boost.org/LICENSE_1_0.txt) |
Chris@16 | 7 // |
Chris@16 | 8 // For more information, see http://www.boost.org/libs/range/ |
Chris@16 | 9 // |
Chris@16 | 10 |
Chris@16 | 11 #ifndef BOOST_RANGE_ADAPTOR_ARGUMENT_FWD_HPP |
Chris@16 | 12 #define BOOST_RANGE_ADAPTOR_ARGUMENT_FWD_HPP |
Chris@16 | 13 |
Chris@16 | 14 #include <boost/config.hpp> |
Chris@16 | 15 |
Chris@16 | 16 #ifdef BOOST_MSVC |
Chris@16 | 17 #pragma warning(push) |
Chris@16 | 18 #pragma warning(disable : 4512) // assignment operator could not be generated |
Chris@16 | 19 #endif |
Chris@16 | 20 |
Chris@16 | 21 namespace boost |
Chris@16 | 22 { |
Chris@16 | 23 namespace range_detail |
Chris@16 | 24 { |
Chris@16 | 25 template< class T > |
Chris@16 | 26 struct holder |
Chris@16 | 27 { |
Chris@16 | 28 T val; |
Chris@16 | 29 holder( T t ) : val(t) |
Chris@16 | 30 { } |
Chris@16 | 31 }; |
Chris@16 | 32 |
Chris@16 | 33 template< class T > |
Chris@16 | 34 struct holder2 |
Chris@16 | 35 { |
Chris@16 | 36 T val1, val2; |
Chris@16 | 37 holder2( T t, T u ) : val1(t), val2(u) |
Chris@16 | 38 { } |
Chris@16 | 39 }; |
Chris@16 | 40 |
Chris@16 | 41 template< template<class> class Holder > |
Chris@16 | 42 struct forwarder |
Chris@16 | 43 { |
Chris@16 | 44 template< class T > |
Chris@16 | 45 Holder<T> operator()( T t ) const |
Chris@16 | 46 { |
Chris@16 | 47 return Holder<T>(t); |
Chris@16 | 48 } |
Chris@16 | 49 }; |
Chris@16 | 50 |
Chris@16 | 51 template< template<class> class Holder > |
Chris@16 | 52 struct forwarder2 |
Chris@16 | 53 { |
Chris@16 | 54 template< class T > |
Chris@16 | 55 Holder<T> operator()( T t, T u ) const |
Chris@16 | 56 { |
Chris@16 | 57 return Holder<T>(t,u); |
Chris@16 | 58 } |
Chris@16 | 59 }; |
Chris@16 | 60 |
Chris@16 | 61 template< template<class,class> class Holder > |
Chris@16 | 62 struct forwarder2TU |
Chris@16 | 63 { |
Chris@16 | 64 template< class T, class U > |
Chris@16 | 65 Holder<T, U> operator()( T t, U u ) const |
Chris@16 | 66 { |
Chris@16 | 67 return Holder<T, U>(t, u); |
Chris@16 | 68 } |
Chris@16 | 69 }; |
Chris@16 | 70 |
Chris@16 | 71 |
Chris@16 | 72 } |
Chris@16 | 73 |
Chris@16 | 74 } |
Chris@16 | 75 |
Chris@16 | 76 #ifdef BOOST_MSVC |
Chris@16 | 77 #pragma warning(pop) |
Chris@16 | 78 #endif |
Chris@16 | 79 |
Chris@16 | 80 #endif |