Allow co_yield of rvalue from generator<T&>
Need to define `yield_value()` overload taking rvalue reference for all types.
This commit is contained in:
parent
64b0572fa8
commit
59f2e779a2
|
@ -35,14 +35,14 @@ namespace cppcoro
|
|||
|
||||
template<
|
||||
typename U = T,
|
||||
std::enable_if_t<!std::is_lvalue_reference<U>::value, int> = 0>
|
||||
std::experimental::suspend_always yield_value(T& value) noexcept
|
||||
std::enable_if_t<!std::is_rvalue_reference<U>::value, int> = 0>
|
||||
std::experimental::suspend_always yield_value(std::remove_reference_t<T>& value) noexcept
|
||||
{
|
||||
m_value = std::addressof(value);
|
||||
return {};
|
||||
}
|
||||
|
||||
std::experimental::suspend_always yield_value(T&& value) noexcept
|
||||
std::experimental::suspend_always yield_value(std::remove_reference_t<T>&& value) noexcept
|
||||
{
|
||||
m_value = std::addressof(value);
|
||||
return {};
|
||||
|
|
Loading…
Reference in a new issue