From: Joel Rosdahl Date: Thu, 26 Sep 2019 17:53:41 +0000 (+0200) Subject: Add std::make_unique implementation X-Git-Tag: v4.0~764 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8cac5ea92e573aaa7508f5c8ff506b5d0b081978;p=thirdparty%2Fccache.git Add std::make_unique implementation --- diff --git a/src/StdMakeUnique.hpp b/src/StdMakeUnique.hpp new file mode 100644 index 000000000..829d2d5cd --- /dev/null +++ b/src/StdMakeUnique.hpp @@ -0,0 +1,32 @@ +// Copyright (C) 2019 Joel Rosdahl and other contributors +// +// See doc/AUTHORS.adoc for a complete list of contributors. +// +// This program is free software; you can redistribute it and/or modify it +// under the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 3 of the License, or (at your option) +// any later version. +// +// This program is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for +// more details. +// +// You should have received a copy of the GNU General Public License along with +// this program; if not, write to the Free Software Foundation, Inc., 51 +// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +#pragma once + +namespace std { + +#if __cplusplus < 201402L +template +inline unique_ptr +make_unique(TArgs&&... args) +{ + return unique_ptr(new T(std::forward(args)...)); +} +#endif + +} // namespace std