arg.hpp

来自「Boost provides free peer-reviewed portab」· HPP 代码 · 共 118 行

HPP
118
字号
// Copyright Peter Dimov 2001-2002// Copyright Aleksey Gurtovoy 2001-2004//// Distributed under 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)//// *Preprocessed* version of the main "arg.hpp" header// -- DO NOT modify by hand!BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPENtemplate<> struct arg< -1 >{    BOOST_STATIC_CONSTANT(int, value  = -1);    BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)    BOOST_MPL_AUX_ARG_TYPEDEF(na, type)    template<          typename U1, typename U2, typename U3, typename U4, typename U5        >    struct apply    {        typedef U1 type;        BOOST_MPL_AUX_ASSERT_NOT_NA(type);    };};template<> struct arg<1>{    BOOST_STATIC_CONSTANT(int, value  = 1);    typedef arg<2> next;    BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)    BOOST_MPL_AUX_ARG_TYPEDEF(na, type)    template<          typename U1, typename U2, typename U3, typename U4, typename U5        >    struct apply    {        typedef U1 type;        BOOST_MPL_AUX_ASSERT_NOT_NA(type);    };};template<> struct arg<2>{    BOOST_STATIC_CONSTANT(int, value  = 2);    typedef arg<3> next;    BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)    BOOST_MPL_AUX_ARG_TYPEDEF(na, type)    template<          typename U1, typename U2, typename U3, typename U4, typename U5        >    struct apply    {        typedef U2 type;        BOOST_MPL_AUX_ASSERT_NOT_NA(type);    };};template<> struct arg<3>{    BOOST_STATIC_CONSTANT(int, value  = 3);    typedef arg<4> next;    BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)    BOOST_MPL_AUX_ARG_TYPEDEF(na, type)    template<          typename U1, typename U2, typename U3, typename U4, typename U5        >    struct apply    {        typedef U3 type;        BOOST_MPL_AUX_ASSERT_NOT_NA(type);    };};template<> struct arg<4>{    BOOST_STATIC_CONSTANT(int, value  = 4);    typedef arg<5> next;    BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)    BOOST_MPL_AUX_ARG_TYPEDEF(na, type)    template<          typename U1, typename U2, typename U3, typename U4, typename U5        >    struct apply    {        typedef U4 type;        BOOST_MPL_AUX_ASSERT_NOT_NA(type);    };};template<> struct arg<5>{    BOOST_STATIC_CONSTANT(int, value  = 5);    typedef arg<6> next;    BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)    BOOST_MPL_AUX_ARG_TYPEDEF(na, type)    template<          typename U1, typename U2, typename U3, typename U4, typename U5        >    struct apply    {        typedef U5 type;        BOOST_MPL_AUX_ASSERT_NOT_NA(type);    };};BOOST_MPL_AUX_NONTYPE_ARITY_SPEC(1,int, arg)BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?