Commit c56ff344 authored by Omer Ozarslan's avatar Omer Ozarslan

Add std::move wrapper to utility library

parent 531b9aa6
......@@ -13,3 +13,17 @@ cdef extern from "<utility>" namespace "std" nogil:
bint operator>(pair&, pair&)
bint operator<=(pair&, pair&)
bint operator>=(pair&, pair&)
cdef extern from * namespace "cython_std" nogil:
"""
#if __cplusplus > 199711L
#include <type_traits>
namespace cython_std {
template <typename T> typename std::remove_reference<T>::type&& move(T& t) noexcept { return std::move(t); }
template <typename T> typename std::remove_reference<T>::type&& move(T&& t) noexcept { return std::move(t); }
}
#endif
"""
cdef T move[T](T)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment