/* Copyright 2012-2017 Glen Joseph Fernandes (glenjofe@gmail.com) Distributed under the Boost Software License, Version 1.0. (http://www.boost.org/LICENSE_1_0.txt) */ #ifndef BOOST_SMART_PTR_MAKE_SHARED_ARRAY_HPP #define BOOST_SMART_PTR_MAKE_SHARED_ARRAY_HPP #include namespace lslboost { template inline typename detail::sp_if_size_array::type make_shared() { return lslboost::allocate_shared(std::allocator::type>()); } template inline typename detail::sp_if_size_array::type make_shared(const typename detail::sp_array_element::type& value) { return lslboost::allocate_shared(std::allocator::type>(), value); } template inline typename detail::sp_if_array::type make_shared(std::size_t size) { return lslboost::allocate_shared(std::allocator::type>(), size); } template inline typename detail::sp_if_array::type make_shared(std::size_t size, const typename detail::sp_array_element::type& value) { return lslboost::allocate_shared(std::allocator::type>(), size, value); } template inline typename detail::sp_if_size_array::type make_shared_noinit() { return allocate_shared_noinit(std::allocator::type>()); } template inline typename detail::sp_if_array::type make_shared_noinit(std::size_t size) { return allocate_shared_noinit(std::allocator::type>(), size); } } /* boost */ #endif