1#ifndef TATOOINE_HOLDER_H
2#define TATOOINE_HOLDER_H
6#include "type_traits.h"
22 template <
typename _T>
40 return std::unique_ptr<base_holder>{
new holder{std::forward<T>(t)}};
Definition: algorithm.h:6
static constexpr forward_tag forward
Definition: tags.h:9
auto hold(T &&t)
Definition: holder.h:39
virtual ~base_holder()=default
T m_held_object
Definition: holder.h:19
virtual ~holder()=default
const auto & get() const
Definition: holder.h:26
T held_type
Definition: holder.h:16
holder(_T &&obj)
Definition: holder.h:23
auto & get()
Definition: holder.h:27