46 if(!selectionId.has_value())
47 selectionId = T::info.id;
49 if constexpr(std::is_base_of<Singleton<T>, T>::value){
53 return { T::info,selectionId.value(), []() -> B * {
return new T; } , T::isCreatable };
80 if(!selectionId.has_value())
81 selectionId = B::info.id;
82 return {
info,selectionId, [ref]() -> B * {
return ref; },ref->isCreatable };
std::function< B *()> create
std::function< bool()> isCreatable