Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/boost/type_traits/make_void.hpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*
0002 Copyright 2017 Glen Joseph Fernandes
0003 (glenjofe@gmail.com)
0004 
0005 Distributed under the Boost Software License,
0006 Version 1.0. (See accompanying file LICENSE_1_0.txt
0007 or copy at http://www.boost.org/LICENSE_1_0.txt)
0008 */
0009 
0010 #ifndef BOOST_TT_MAKE_VOID_HPP_INCLUDED
0011 #define BOOST_TT_MAKE_VOID_HPP_INCLUDED
0012 
0013 #include <boost/config.hpp>
0014 
0015 namespace boost {
0016 
0017 #if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
0018 template<class...>
0019 struct make_void {
0020     typedef void type;
0021 };
0022 
0023 #if !defined(BOOST_NO_CXX11_TEMPLATE_ALIASES)
0024 template<class... Ts>
0025 using void_t = typename make_void<Ts...>::type;
0026 #endif
0027 
0028 #else /* BOOST_NO_CXX11_VARIADIC_TEMPLATES */
0029 
0030 template<class = void,
0031          class = void,
0032          class = void,
0033          class = void,
0034          class = void>
0035 struct make_void {
0036     typedef void type;
0037 };
0038 
0039 #if !defined(BOOST_NO_CXX11_TEMPLATE_ALIASES)
0040 template<class A = void,
0041          class B = void,
0042          class C = void,
0043          class D = void,
0044          class E = void>
0045 using void_t = typename make_void<A, B, C, D, E>::type;
0046 #endif
0047 
0048 #endif
0049 
0050 } /* boost */
0051 
0052 #endif