/
githubmirror
/
omim
Обзор
Документация
Войти
/
githubmirror
/
omim
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
generator/factory_utils.hpp
22 строки
498 B
Maksim Andrianov
[generator] Added geo objects translator.
05 окт 2018, 17:36
05 окт 2018, 17:36
95c92d6
Код
Авторство
О чём код?
#pragma once #include <memory> #include <type_traits> namespace generator { template <typename T, typename... Args> std::enable_if_t<std::is_constructible<T, Args...>::value, std::shared_ptr<T>> create(Args&&... args) { return std::make_shared<T>(std::forward<Args>(args)...); } // impossible to construct template <typename T, typename... Args> std::enable_if_t<!std::is_constructible<T, Args...>::value, std::shared_ptr<T>> create(Args&&... ) { return nullptr; } } // namespace generator