Add boost::ignore_unused()

This commit is contained in:
Adam Wulkiewicz
2014-06-02 15:06:53 +02:00
parent b36712f765
commit 61cc397be8
5 changed files with 173 additions and 0 deletions

View File

@@ -0,0 +1,70 @@
// Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.
//
// Use, modification and distribution is subject to the Boost Software License,
// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
#ifndef BOOST_CORE_IGNORE_UNUSED_HPP
#define BOOST_CORE_IGNORE_UNUSED_HPP
#include <boost/config.hpp>
namespace boost {
#ifndef BOOST_NO_CXX11_VARIADIC_TEMPLATES
template <typename... Ts>
inline void ignore_unused(Ts const& ...)
{}
template <typename... Ts>
inline void ignore_unused()
{}
#else
template <typename T1>
inline void ignore_unused(T1 const&)
{}
template <typename T1, typename T2>
inline void ignore_unused(T1 const&, T2 const&)
{}
template <typename T1, typename T2, typename T3>
inline void ignore_unused(T1 const&, T2 const&, T3 const&)
{}
template <typename T1, typename T2, typename T3, typename T4>
inline void ignore_unused(T1 const&, T2 const&, T3 const&, T4 const&)
{}
template <typename T1, typename T2, typename T3, typename T4, typename T5>
inline void ignore_unused(T1 const&, T2 const&, T3 const&, T4 const&, T5 const&)
{}
template <typename T1>
inline void ignore_unused()
{}
template <typename T1, typename T2>
inline void ignore_unused()
{}
template <typename T1, typename T2, typename T3>
inline void ignore_unused()
{}
template <typename T1, typename T2, typename T3, typename T4>
inline void ignore_unused()
{}
template <typename T1, typename T2, typename T3, typename T4, typename T5>
inline void ignore_unused()
{}
#endif
} // namespace boost
#endif // BOOST_CORE_IGNORE_UNUSED_HPP