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