is_function_ptr_tester.hpp
来自「Boost provides free peer-reviewed portab」· HPP 代码 · 共 655 行 · 第 1/5 页
HPP
655 行
// (C) Copyright Dave Abrahams, Steve Cleary, Beman Dawes, // Aleksey Gurtovoy, Howard Hinnant & John Maddock 2000. // Use, modification and distribution are 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).//// See http://www.boost.org/libs/type_traits for most recent version including documentation.#if !defined(BOOST_PP_IS_ITERATING)///// header body#ifndef BOOST_TT_DETAIL_IS_FUNCTION_PTR_TESTER_HPP_INCLUDED#define BOOST_TT_DETAIL_IS_FUNCTION_PTR_TESTER_HPP_INCLUDED#include <boost/type_traits/detail/yes_no_type.hpp>#include <boost/type_traits/config.hpp>#if defined(BOOST_TT_PREPROCESSING_MODE)# include <boost/preprocessor/iterate.hpp># include <boost/preprocessor/enum_params.hpp># include <boost/preprocessor/comma_if.hpp>#endifnamespace boost {namespace type_traits {// Note it is acceptible to use ellipsis here, since the argument will// always be a pointer type of some sort (JM 2005/06/04):no_type BOOST_TT_DECL is_function_ptr_tester(...);#if !defined(BOOST_TT_PREPROCESSING_MODE)// pre-processed code, don't edit, try GNU cpp with // cpp -I../../../ -DBOOST_TT_PREPROCESSING_MODE -x c++ -P filenametemplate <class R >yes_type is_function_ptr_tester(R (*)());#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTINGtemplate <class R >yes_type is_function_ptr_tester(R (*)( ...));#endif#ifdef BOOST_TT_TEST_MS_FUNC_SIGStemplate <class R >yes_type is_function_ptr_tester(R (__stdcall*)());template <class R >yes_type is_function_ptr_tester(R (__stdcall*)( ...));#ifndef _MANAGEDtemplate <class R >yes_type is_function_ptr_tester(R (__fastcall*)());template <class R >yes_type is_function_ptr_tester(R (__fastcall*)( ...));#endiftemplate <class R >yes_type is_function_ptr_tester(R (__cdecl*)());template <class R >yes_type is_function_ptr_tester(R (__cdecl*)( ...));#endiftemplate <class R , class T0 >yes_type is_function_ptr_tester(R (*)( T0));#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTINGtemplate <class R , class T0 >yes_type is_function_ptr_tester(R (*)( T0 ...));#endif#ifdef BOOST_TT_TEST_MS_FUNC_SIGStemplate <class R , class T0 >yes_type is_function_ptr_tester(R (__stdcall*)( T0));template <class R , class T0 >yes_type is_function_ptr_tester(R (__stdcall*)( T0 ...));#ifndef _MANAGEDtemplate <class R , class T0 >yes_type is_function_ptr_tester(R (__fastcall*)( T0));template <class R , class T0 >yes_type is_function_ptr_tester(R (__fastcall*)( T0 ...));#endiftemplate <class R , class T0 >yes_type is_function_ptr_tester(R (__cdecl*)( T0));template <class R , class T0 >yes_type is_function_ptr_tester(R (__cdecl*)( T0 ...));#endiftemplate <class R , class T0 , class T1 >yes_type is_function_ptr_tester(R (*)( T0 , T1));#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTINGtemplate <class R , class T0 , class T1 >yes_type is_function_ptr_tester(R (*)( T0 , T1 ...));#endif#ifdef BOOST_TT_TEST_MS_FUNC_SIGStemplate <class R , class T0 , class T1 >yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1));template <class R , class T0 , class T1 >yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 ...));#ifndef _MANAGEDtemplate <class R , class T0 , class T1 >yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1));template <class R , class T0 , class T1 >yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 ...));#endiftemplate <class R , class T0 , class T1 >yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1));template <class R , class T0 , class T1 >yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 ...));#endiftemplate <class R , class T0 , class T1 , class T2 >yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2));#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTINGtemplate <class R , class T0 , class T1 , class T2 >yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 ...));#endif#ifdef BOOST_TT_TEST_MS_FUNC_SIGStemplate <class R , class T0 , class T1 , class T2 >yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2));template <class R , class T0 , class T1 , class T2 >yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 ...));#ifndef _MANAGEDtemplate <class R , class T0 , class T1 , class T2 >yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2));template <class R , class T0 , class T1 , class T2 >yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 ...));#endiftemplate <class R , class T0 , class T1 , class T2 >yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2));template <class R , class T0 , class T1 , class T2 >yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 ...));#endiftemplate <class R , class T0 , class T1 , class T2 , class T3 >yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3));#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTINGtemplate <class R , class T0 , class T1 , class T2 , class T3 >yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 ...));#endif#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?