Core/Signal: Add move Connect method

Former-commit-id: 1874faf23299ebac3e433195faa03c9eb6bd9ed4
This commit is contained in:
Lynix 2015-06-05 14:45:11 +02:00
parent ea3e15d5d3
commit d1258c2a6d
2 changed files with 7 additions and 0 deletions

View File

@ -20,6 +20,7 @@ class NzSignal
~NzSignal() = default;
void Connect(const Callback& func);
void Connect(Callback&& func);
template<typename O> void Connect(O& object, void (O::*method)(Args...));
template<typename O> void Connect(O* object, void (O::*method)(Args...));

View File

@ -12,6 +12,12 @@ void NzSignal<Args...>::Connect(const Callback& func)
m_callbacks.push_back(func);
}
template<typename... Args>
void NzSignal<Args...>::Connect(Callback&& func)
{
m_callbacks.emplace_back(std::move(func));
}
template<typename... Args>
template<typename O>
void NzSignal<Args...>::Connect(O& object, void (O::*method) (Args...))