1 #ifndef USE_RANGES_FAKE_BOOST_H 2 #define USE_RANGES_FAKE_BOOST_H 3 4 namespace boost { 5 namespace range_adl_barrier { 6 7 template <typename T> void *begin(T &); 8 template <typename T> void *end(T &); 9 template <typename T> void *const_begin(const T &); 10 template <typename T> void *const_end(const T &); 11 } // namespace range_adl_barrier 12 13 using namespace range_adl_barrier; 14 15 template <typename T> void *rbegin(T &); 16 template <typename T> void *rend(T &); 17 18 template <typename T> void *const_rbegin(T &); 19 template <typename T> void *const_rend(T &); 20 namespace algorithm { 21 22 template <class InputIterator, class T, class BinaryOperation> 23 T reduce(InputIterator first, InputIterator last, T init, BinaryOperation bOp) { 24 return init; 25 } 26 } // namespace algorithm 27 } // namespace boost 28 29 #endif // USE_RANGES_FAKE_BOOST_H 30