1 #ifndef OSMIUM_THREAD_FUNCTION_WRAPPER_HPP 2 #define OSMIUM_THREAD_FUNCTION_WRAPPER_HPP 68 std::unique_ptr<impl_base>
impl;
76 m_functor(
std::forward<F>(functor)) {
90 template <
typename TFunction>
93 impl(new
impl_type<TFunction>(
std::forward<TFunction>(f))) {
113 impl(std::move(other.impl)) {
117 impl = std::move(other.impl);
123 explicit operator bool()
const {
124 return static_cast<bool>(
impl);
133 #endif // OSMIUM_THREAD_FUNCTION_WRAPPER_HPP F m_functor
Definition: function_wrapper.hpp:73
impl_base & operator=(const impl_base &) noexcept=default
function_wrapper()=default
Definition: function_wrapper.hpp:50
Definition: location.hpp:550
impl_type(F &&functor)
Definition: function_wrapper.hpp:75
virtual ~impl_base() noexcept=default
std::unique_ptr< impl_base > impl
Definition: function_wrapper.hpp:68
Namespace for everything in the Osmium library.
Definition: assembler.hpp:53
~function_wrapper()=default
Definition: function_wrapper.hpp:71
function_wrapper & operator=(function_wrapper &&other) noexcept
Definition: function_wrapper.hpp:116
Definition: function_wrapper.hpp:48
function_wrapper(int)
Definition: function_wrapper.hpp:99
function_wrapper(TFunction &&f)
Definition: function_wrapper.hpp:92
bool operator()()
Definition: function_wrapper.hpp:103
function_wrapper(function_wrapper &&other) noexcept
Definition: function_wrapper.hpp:112
impl_base() noexcept=default
virtual bool call()
Definition: function_wrapper.hpp:62
bool call() override
Definition: function_wrapper.hpp:79