forked from boostorg/type_traits
Merge branch 'develop'
This commit is contained in:
47
.travis.yml
47
.travis.yml
@ -223,36 +223,51 @@ matrix:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-trusty-5.0
|
||||
|
||||
- os: linux
|
||||
compiler: clang++-6.0
|
||||
env: TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03,11,14,1z
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- clang-6.0
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
- llvm-toolchain-trusty-6.0
|
||||
|
||||
- os: osx
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
osx_image: xcode10.1
|
||||
|
||||
- os: osx
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
osx_image: xcode9.4
|
||||
# 9.1 fails some tests that pass on 9.4:
|
||||
- os: osx
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
osx_image: xcode9.3
|
||||
- os: osx
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
osx_image: xcode9.2
|
||||
- os: osx
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
osx_image: xcode9.1
|
||||
|
||||
- os: osx
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
osx_image: xcode8.3
|
||||
|
||||
- os: osx
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
osx_image: xcode8.2
|
||||
|
||||
- os: osx
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
osx_image: xcode8.1
|
||||
|
||||
- os: osx
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
osx_image: xcode8.0
|
||||
|
||||
- os: osx
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
osx_image: xcode7.3
|
||||
|
||||
- os: osx
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
osx_image: xcode6.4
|
||||
|
||||
|
||||
install:
|
||||
- cd ..
|
||||
- git clone -b $TRAVIS_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
- cd boost-root
|
||||
- git submodule update --init tools/build
|
||||
- git submodule update --init tools/boost_install
|
||||
- git submodule update --init libs/headers
|
||||
- git submodule update --init libs/config
|
||||
- git submodule update --init libs/assert
|
||||
- git submodule update --init libs/bind
|
||||
|
20
appveyor.yml
20
appveyor.yml
@ -21,15 +21,29 @@ environment:
|
||||
- ARGS: --toolset=msvc-11.0 address-model=32
|
||||
- ARGS: --toolset=msvc-12.0 address-model=32
|
||||
- ARGS: --toolset=msvc-14.0 address-model=32
|
||||
- ARGS: --toolset=msvc-12.0 address-model=32 cxxflags=-clr asynch-exceptions=on
|
||||
- ARGS: --toolset=msvc-12.0 address-model=32 cxxflags=-arch:IA32
|
||||
- ARGS: --toolset=msvc-14.0 address-model=32 cxxflags=-clr asynch-exceptions=on
|
||||
- ARGS: --toolset=msvc-12.0 address-model=64
|
||||
- ARGS: --toolset=msvc-14.0 address-model=64
|
||||
- ARGS: --toolset=msvc-12.0 address-model=64 cxxflags=-clr asynch-exceptions=on
|
||||
- ARGS: --toolset=msvc-14.0 address-model=64 cxxflags=-clr asynch-exceptions=on
|
||||
- ARGS: --toolset=msvc-14.0 address-model=64 cxxflags=-std:c++latest
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
ARGS: --toolset=msvc-14.1 address-model=64
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
ARGS: --toolset=msvc-14.1 address-model=32
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
ARGS: --toolset=msvc-14.1 address-model=32 cxxflags=-arch:IA32
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
ARGS: --toolset=msvc-14.1 address-model=64 cxxflags=-std:c++latest
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
ARGS: --toolset=msvc-14.1 address-model=64 cxxflags=-clr asynch-exceptions=on
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
ARGS: --toolset=msvc-14.1 address-model=32 cxxflags=-clr asynch-exceptions=on
|
||||
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||
ARGS: --toolset=msvc-14.1 architecture=arm testing.execute=off
|
||||
DISABLE_CONFIG_INFO: "YES"
|
||||
- ARGS: --toolset=gcc address-model=64
|
||||
PATH: C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin;%PATH%
|
||||
- ARGS: --toolset=gcc address-model=64 cxxflags=-std=gnu++1z
|
||||
@ -45,6 +59,8 @@ install:
|
||||
- git clone -b %APPVEYOR_REPO_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
|
||||
- cd boost-root
|
||||
- git submodule update --init tools/build
|
||||
- git submodule update --init tools/boost_install
|
||||
- git submodule update --init libs/headers
|
||||
- git submodule update --init libs/config
|
||||
- git submodule update --init libs/assert
|
||||
- git submodule update --init libs/bind
|
||||
@ -68,7 +84,7 @@ build: off
|
||||
|
||||
test_script:
|
||||
- cd libs\config\test
|
||||
- ..\..\..\b2 config_info_travis_install %ARGS%
|
||||
- config_info_travis
|
||||
- IF DEFINED DISABLE_CONFIG_INFO (echo skipping config_info build) ELSE (..\..\..\b2 config_info_travis_install %ARGS%)
|
||||
- IF DEFINED DISABLE_CONFIG_INFO (echo skipping config_info printout) ELSE (config_info_travis)
|
||||
- cd ..\..\type_traits\test
|
||||
- ..\..\..\b2 -j3 --hash %ARGS%
|
||||
|
@ -7,6 +7,10 @@
|
||||
|
||||
[section:history History]
|
||||
|
||||
[h4 Boost-1.70.0]
|
||||
|
||||
* Added new traits __is_bounded_array, __is_unbounded_array.
|
||||
|
||||
[h4 Boost-1.68.0]
|
||||
|
||||
* Added support for detecting trivial moves on clang.
|
||||
|
34
doc/is_bounded_array.qbk
Normal file
34
doc/is_bounded_array.qbk
Normal file
@ -0,0 +1,34 @@
|
||||
[/
|
||||
Copyright 2018 Glen Joseph Fernandes
|
||||
(glenjofe@gmail.com)
|
||||
|
||||
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).
|
||||
]
|
||||
|
||||
[section:is_bounded_array is_bounded_array]
|
||||
|
||||
template<class T>
|
||||
struct is_bounded_array
|
||||
: __tof { };
|
||||
|
||||
__inherit If T is a (possibly cv-qualified) array type of known bound, then
|
||||
inherits from __true_type, otherwise inherits from __false_type.
|
||||
|
||||
__header `#include <boost/type_traits/is_bounded_array.hpp>`
|
||||
|
||||
[all_compilers]
|
||||
|
||||
__examples
|
||||
|
||||
[:`is_bounded_array<int[2]>` inherits from `__true_type`.]
|
||||
|
||||
[:`is_bounded_array<char[2][3]>::type` is the type `__true_type`.]
|
||||
|
||||
[:`is_bounded_array<double[2]>::value` is an integral constant expression that
|
||||
evaluates to /true/.]
|
||||
|
||||
[:`is_bounded_array<T>::value_type` is the type `bool`.]
|
||||
|
||||
[endsect]
|
34
doc/is_unbounded_array.qbk
Normal file
34
doc/is_unbounded_array.qbk
Normal file
@ -0,0 +1,34 @@
|
||||
[/
|
||||
Copyright 2018 Glen Joseph Fernandes
|
||||
(glenjofe@gmail.com)
|
||||
|
||||
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).
|
||||
]
|
||||
|
||||
[section:is_unbounded_array is_unbounded_array]
|
||||
|
||||
template<class T>
|
||||
struct is_unbounded_array
|
||||
: __tof { };
|
||||
|
||||
__inherit If T is a (possibly cv-qualified) array type of unknown bound, then
|
||||
inherits from __true_type, otherwise inherits from __false_type.
|
||||
|
||||
__header `#include <boost/type_traits/is_unbounded_array.hpp>`
|
||||
|
||||
[all_compilers]
|
||||
|
||||
__examples
|
||||
|
||||
[:`is_unbounded_array<int[]>` inherits from `__true_type`.]
|
||||
|
||||
[:`is_unbounded_array<char[][3]>::type` is the type `__true_type`.]
|
||||
|
||||
[:`is_unbounded_array<double[]>::value` is an integral constant expression that
|
||||
evaluates to /true/.]
|
||||
|
||||
[:`is_unbounded_array<T>::value_type` is the type `bool`.]
|
||||
|
||||
[endsect]
|
@ -51,6 +51,8 @@
|
||||
[def __is_rvalue_reference [link boost_typetraits.reference.is_rvalue_reference is_rvalue_reference]]
|
||||
[def __is_member_pointer [link boost_typetraits.reference.is_member_pointer is_member_pointer]]
|
||||
[def __is_array [link boost_typetraits.reference.is_array is_array]]
|
||||
[def __is_bounded_array [link boost_typetraits.reference.is_bounded_array is_bounded_array]]
|
||||
[def __is_unbounded_array [link boost_typetraits.reference.is_unbounded_array is_unbounded_array]]
|
||||
[def __is_union [link boost_typetraits.reference.is_union is_union]]
|
||||
[def __is_class [link boost_typetraits.reference.is_class is_class]]
|
||||
[def __is_enum [link boost_typetraits.reference.is_enum is_enum]]
|
||||
@ -385,6 +387,7 @@ See __has_trivial_constructor.
|
||||
[include is_array.qbk]
|
||||
[include is_assignable.qbk]
|
||||
[include is_base_of.qbk]
|
||||
[include is_bounded_array.qbk]
|
||||
[include is_class.qbk]
|
||||
[include is_complete.qbk]
|
||||
[include is_complex.qbk]
|
||||
@ -424,6 +427,7 @@ See __has_trivial_constructor.
|
||||
[include is_scalar.qbk]
|
||||
[include is_signed.qbk]
|
||||
[include is_stateless.qbk]
|
||||
[include is_unbounded_array.qbk]
|
||||
[include is_union.qbk]
|
||||
[include is_unsigned.qbk]
|
||||
[include is_virtual_base_of.qbk]
|
||||
|
@ -86,6 +86,13 @@
|
||||
# define BOOST_TT_HAS_ASCCURATE_IS_FUNCTION
|
||||
#endif
|
||||
|
||||
#if defined(_MSVC_LANG) && (_MSVC_LANG >= 201703)
|
||||
# define BOOST_TT_NO_DEDUCED_NOEXCEPT_PARAM
|
||||
#endif
|
||||
#if defined(__APPLE_CC__) && defined(__clang_major__) && (__clang_major__ == 9) && (__clang_minor__ == 0)
|
||||
# define BOOST_TT_NO_DEDUCED_NOEXCEPT_PARAM
|
||||
# define BOOST_TT_NO_NOEXCEPT_SEPARATE_TYPE
|
||||
#endif
|
||||
|
||||
#endif // BOOST_TT_CONFIG_HPP_INCLUDED
|
||||
|
||||
|
@ -18,7 +18,7 @@ namespace boost {
|
||||
template <class T>
|
||||
struct is_function : public false_type {};
|
||||
|
||||
#if defined(__cpp_noexcept_function_type) && !defined(_MSC_VER)
|
||||
#if defined(__cpp_noexcept_function_type) && !defined(BOOST_TT_NO_DEDUCED_NOEXCEPT_PARAM)
|
||||
#define BOOST_TT_NOEXCEPT_PARAM , bool NE
|
||||
#define BOOST_TT_NOEXCEPT_DECL noexcept(NE)
|
||||
#else
|
||||
@ -96,7 +96,7 @@ namespace boost {
|
||||
template <class Ret, class ...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret(Args..., ...)const volatile && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#if defined(_MSC_VER) && !defined(_M_ARM) && !defined(_M_ARM64)
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __clrcall(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
@ -104,11 +104,15 @@ namespace boost {
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __stdcall(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// const:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -117,11 +121,15 @@ namespace boost {
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __stdcall(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -130,11 +138,15 @@ namespace boost {
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __stdcall(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// const volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -143,11 +155,15 @@ namespace boost {
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __stdcall(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// reference qualified:
|
||||
#ifdef __CLR_VER
|
||||
@ -157,11 +173,15 @@ namespace boost {
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __stdcall(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// const:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -170,11 +190,15 @@ namespace boost {
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __stdcall(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -183,11 +207,15 @@ namespace boost {
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __stdcall(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// const volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -196,11 +224,15 @@ namespace boost {
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __stdcall(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// rvalue reference qualified:
|
||||
#ifdef __CLR_VER
|
||||
@ -209,12 +241,16 @@ namespace boost {
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __stdcall(Args...)&&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_function<Ret __stdcall(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)&&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)&&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// const:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -223,11 +259,15 @@ namespace boost {
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __stdcall(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -236,11 +276,15 @@ namespace boost {
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __stdcall(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// const volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -249,17 +293,21 @@ namespace boost {
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __stdcall(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
#endif // _MSC_VER
|
||||
|
||||
// All over again for msvc with noexcept:
|
||||
|
||||
#if defined(_MSVC_LANG) && (_MSVC_LANG >= 201703)
|
||||
#if defined(BOOST_TT_NO_DEDUCED_NOEXCEPT_PARAM) && !defined(BOOST_TT_NO_NOEXCEPT_SEPARATE_TYPE)
|
||||
|
||||
#undef BOOST_TT_NOEXCEPT_DECL
|
||||
#define BOOST_TT_NOEXCEPT_DECL noexcept
|
||||
@ -339,8 +387,10 @@ namespace boost {
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// const:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -352,8 +402,10 @@ namespace boost {
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -365,8 +417,10 @@ namespace boost {
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// const volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -378,8 +432,10 @@ namespace boost {
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// reference qualified:
|
||||
#ifdef __CLR_VER
|
||||
@ -392,8 +448,10 @@ namespace boost {
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// const:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -405,8 +463,10 @@ namespace boost {
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -418,8 +478,10 @@ namespace boost {
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// const volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -431,8 +493,10 @@ namespace boost {
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// rvalue reference qualified:
|
||||
#ifdef __CLR_VER
|
||||
@ -445,8 +509,10 @@ namespace boost {
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// const:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -458,8 +524,10 @@ namespace boost {
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -471,8 +539,10 @@ namespace boost {
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
// const volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
@ -484,8 +554,10 @@ namespace boost {
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __fastcall(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_function<Ret __vectorcall(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
#endif // _MSC_VER
|
||||
|
||||
|
@ -44,368 +44,524 @@ no_type BOOST_TT_DECL is_function_ptr_tester(...);
|
||||
// cpp -I../../../ -DBOOST_TT_PREPROCESSING_MODE -x c++ -P filename
|
||||
|
||||
template <class R >
|
||||
yes_type is_function_ptr_tester(R (*)());
|
||||
yes_type is_function_ptr_tester(R(*)());
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R >
|
||||
yes_type is_function_ptr_tester(R (*)( ...));
|
||||
yes_type is_function_ptr_tester(R(*)(...));
|
||||
#endif
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)());
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)());
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)());
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)());
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)());
|
||||
#endif
|
||||
template <class R >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)());
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)());
|
||||
#endif
|
||||
template <class R, class T0 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0 ...));
|
||||
#endif
|
||||
template <class R , class T0 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0));
|
||||
template <class R , class T0 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <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));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <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));
|
||||
#endif
|
||||
template <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));
|
||||
#endif
|
||||
template <class R, class T0, class T1 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1));
|
||||
template <class R , class T0 , class T1 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <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));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <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));
|
||||
#endif
|
||||
template <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));
|
||||
#endif
|
||||
template <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_TESTING
|
||||
template <class R, class T0, class T1, class T2 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2));
|
||||
template <class R , class T0 , class T1 , class T2 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <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));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <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));
|
||||
#endif
|
||||
template <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));
|
||||
#endif
|
||||
template <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_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3));
|
||||
template <class R, class T0, class T1, class T2, class T3 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3));
|
||||
template <class R, class T0, class T1, class T2, class T3 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3));
|
||||
template <class R, class T0, class T1, class T2, class T3 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22, class T23 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22, class T23 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 , class T23 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 , class T23 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 , class T23 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22, class T23 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22, class T23 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23));
|
||||
#endif
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 , class T23 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22, class T23 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 , class T23 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22, class T23 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22, class T23, class T24 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24));
|
||||
#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22, class T23, class T24 >
|
||||
yes_type is_function_ptr_tester(R(*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24 ...));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 , class T23 , class T24 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24));
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 , class T23 , class T24 >
|
||||
yes_type is_function_ptr_tester(R (*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...));
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 , class T23 , class T24 >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24));
|
||||
#ifndef _MANAGED
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 , class T23 , class T24 >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24));
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22, class T23, class T24 >
|
||||
yes_type is_function_ptr_tester(R(__stdcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24));
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22, class T23, class T24 >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24));
|
||||
#endif
|
||||
template <class R , class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 , class T8 , class T9 , class T10 , class T11 , class T12 , class T13 , class T14 , class T15 , class T16 , class T17 , class T18 , class T19 , class T20 , class T21 , class T22 , class T23 , class T24 >
|
||||
yes_type is_function_ptr_tester(R (__cdecl*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24));
|
||||
#ifndef _MANAGED
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22, class T23, class T24 >
|
||||
yes_type is_function_ptr_tester(R(__fastcall*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24));
|
||||
#endif
|
||||
template <class R, class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9, class T10, class T11, class T12, class T13, class T14, class T15, class T16, class T17, class T18, class T19, class T20, class T21, class T22, class T23, class T24 >
|
||||
yes_type is_function_ptr_tester(R(__cdecl*)(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24));
|
||||
#endif
|
||||
#else
|
||||
|
||||
@ -437,6 +593,10 @@ yes_type is_function_ptr_tester(R (*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) .
|
||||
@#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
template <class R BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,class T) >
|
||||
yes_type is_function_ptr_tester(R (__stdcall*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)));
|
||||
@#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class R BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER, class T) >
|
||||
yes_type is_function_ptr_tester(R(__vectorcall*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER, T)));
|
||||
@#endif
|
||||
@#ifndef _MANAGED
|
||||
template <class R BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,class T) >
|
||||
yes_type is_function_ptr_tester(R (__fastcall*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)));
|
||||
|
@ -27,7 +27,8 @@ struct is_likely_stateless_lambda : public false_type {};
|
||||
|
||||
}}
|
||||
|
||||
#elif !defined(BOOST_NO_CXX11_LAMBDAS) && !defined(BOOST_NO_CXX11_DECLTYPE) && !defined(BOOST_NO_CXX11_TEMPLATE_ALIASES) && !BOOST_WORKAROUND(BOOST_MSVC, < 1900)
|
||||
#elif !defined(BOOST_NO_CXX11_LAMBDAS) && !defined(BOOST_NO_CXX11_DECLTYPE) && !defined(BOOST_NO_CXX11_TEMPLATE_ALIASES) && !BOOST_WORKAROUND(BOOST_MSVC, < 1900)\
|
||||
&& !(BOOST_WORKAROUND(BOOST_MSVC, == 1900) && defined(__CLR_VER))
|
||||
|
||||
#include <boost/type_traits/is_convertible.hpp>
|
||||
#include <boost/type_traits/enable_if.hpp>
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -31,7 +31,7 @@ namespace boost {
|
||||
template <class T>
|
||||
struct is_member_function_pointer<T const volatile> : public is_member_function_pointer<T> {};
|
||||
|
||||
#if defined(_MSVC_LANG) && (_MSVC_LANG >= 201703)
|
||||
#if defined(BOOST_TT_NO_DEDUCED_NOEXCEPT_PARAM)
|
||||
// MSVC can't handle noexcept(b) as a deduced template parameter
|
||||
// so we will have to write everything out :(
|
||||
#define BOOST_TT_NOEXCEPT_PARAM
|
||||
@ -108,192 +108,249 @@ namespace boost {
|
||||
template <class Ret, class C, class ...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(C::*)(Args..., ...)const volatile && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#if defined(_MSC_VER) && !defined(_M_ARM) && !defined(_M_ARM64)
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret (__clrcall C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__stdcall C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__fastcall C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// const:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__stdcall C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__fastcall C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__stdcall C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__fastcall C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// const volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__stdcall C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__fastcall C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// reference qualified:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__stdcall C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__fastcall C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// const:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__stdcall C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__fastcall C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__stdcall C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__fastcall C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// const volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__stdcall C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__fastcall C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// rvalue reference qualified:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__stdcall C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__fastcall C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// const:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__stdcall C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__fastcall C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__stdcall C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__fastcall C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// const volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__stdcall C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__fastcall C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
#if defined(_MSVC_LANG) && (_MSVC_LANG >= 201703)
|
||||
#if defined(BOOST_TT_NO_DEDUCED_NOEXCEPT_PARAM) && !defined(BOOST_TT_NO_NOEXCEPT_SEPARATE_TYPE)
|
||||
|
||||
#undef BOOST_TT_NOEXCEPT_DECL
|
||||
#define BOOST_TT_NOEXCEPT_DECL noexcept
|
||||
@ -365,186 +422,244 @@ namespace boost {
|
||||
#ifdef _MSC_VER
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__stdcall C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__fastcall C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// const:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__stdcall C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__fastcall C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__stdcall C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__fastcall C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// const volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__stdcall C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__fastcall C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// reference qualified:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__stdcall C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__fastcall C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// const:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__stdcall C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__fastcall C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__stdcall C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__fastcall C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// const volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__stdcall C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__fastcall C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// rvalue reference qualified:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__stdcall C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__fastcall C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// const:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__stdcall C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__fastcall C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__stdcall C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__fastcall C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
|
||||
// const volatile:
|
||||
#ifdef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret __clrcall(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
struct is_member_function_pointer<Ret(__clrcall C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
|
||||
#endif
|
||||
#ifndef _M_AMD64
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__stdcall C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#ifndef __CLR_VER
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__fastcall C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#if !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM>
|
||||
struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {};
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
#endif
|
||||
|
42
include/boost/type_traits/is_bounded_array.hpp
Normal file
42
include/boost/type_traits/is_bounded_array.hpp
Normal file
@ -0,0 +1,42 @@
|
||||
/*
|
||||
Copyright 2018 Glen Joseph Fernandes
|
||||
(glenjofe@gmail.com)
|
||||
|
||||
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)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_TT_IS_BOUNDED_ARRAY_HPP_INCLUDED
|
||||
#define BOOST_TT_IS_BOUNDED_ARRAY_HPP_INCLUDED
|
||||
|
||||
#include <boost/type_traits/integral_constant.hpp>
|
||||
#include <cstddef>
|
||||
|
||||
namespace boost {
|
||||
|
||||
template<class T>
|
||||
struct is_bounded_array
|
||||
: false_type { };
|
||||
|
||||
#if !defined(BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS)
|
||||
template<class T, std::size_t N>
|
||||
struct is_bounded_array<T[N]>
|
||||
: true_type { };
|
||||
|
||||
template<class T, std::size_t N>
|
||||
struct is_bounded_array<const T[N]>
|
||||
: true_type { };
|
||||
|
||||
template<class T, std::size_t N>
|
||||
struct is_bounded_array<volatile T[N]>
|
||||
: true_type { };
|
||||
|
||||
template<class T, std::size_t N>
|
||||
struct is_bounded_array<const volatile T[N]>
|
||||
: true_type { };
|
||||
#endif
|
||||
|
||||
} /* boost */
|
||||
|
||||
#endif
|
41
include/boost/type_traits/is_unbounded_array.hpp
Normal file
41
include/boost/type_traits/is_unbounded_array.hpp
Normal file
@ -0,0 +1,41 @@
|
||||
/*
|
||||
Copyright 2018 Glen Joseph Fernandes
|
||||
(glenjofe@gmail.com)
|
||||
|
||||
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)
|
||||
*/
|
||||
|
||||
#ifndef BOOST_TT_IS_UNBOUNDED_ARRAY_HPP_INCLUDED
|
||||
#define BOOST_TT_IS_UNBOUNDED_ARRAY_HPP_INCLUDED
|
||||
|
||||
#include <boost/type_traits/integral_constant.hpp>
|
||||
|
||||
namespace boost {
|
||||
|
||||
template<class T>
|
||||
struct is_unbounded_array
|
||||
: false_type { };
|
||||
|
||||
#if !defined(BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS)
|
||||
template<class T>
|
||||
struct is_unbounded_array<T[]>
|
||||
: true_type { };
|
||||
|
||||
template<class T>
|
||||
struct is_unbounded_array<const T[]>
|
||||
: true_type { };
|
||||
|
||||
template<class T>
|
||||
struct is_unbounded_array<volatile T[]>
|
||||
: true_type { };
|
||||
|
||||
template<class T>
|
||||
struct is_unbounded_array<const volatile T[]>
|
||||
: true_type { };
|
||||
#endif
|
||||
|
||||
} /* boost */
|
||||
|
||||
#endif
|
@ -239,7 +239,8 @@ BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_copy<test_abc1>::value, false);
|
||||
|
||||
#ifndef BOOST_NO_CXX11_DELETED_FUNCTIONS
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_copy<delete_copy>::value, false);
|
||||
#if !(defined(CI_SUPPRESS_KNOWN_ISSUES) && BOOST_WORKAROUND(BOOST_GCC, < 40600)) && !(defined(CI_SUPPRESS_KNOWN_ISSUES) && BOOST_WORKAROUND(BOOST_MSVC, == 1800))
|
||||
#if !(defined(CI_SUPPRESS_KNOWN_ISSUES) && BOOST_WORKAROUND(BOOST_GCC, < 40600)) && !(defined(CI_SUPPRESS_KNOWN_ISSUES) && BOOST_WORKAROUND(BOOST_MSVC, == 1800))\
|
||||
&& !(defined(CI_SUPPRESS_KNOWN_ISSUES) && defined(__CLR_VER))
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::has_nothrow_copy<delete_move>::value, false);
|
||||
#endif
|
||||
#endif
|
||||
|
35
test/is_bounded_array_test.cpp
Normal file
35
test/is_bounded_array_test.cpp
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
Copyright 2018 Glen Joseph Fernandes
|
||||
(glenjofe@gmail.com)
|
||||
|
||||
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)
|
||||
*/
|
||||
#ifdef TEST_STD
|
||||
#include <type_traits>
|
||||
#else
|
||||
#include <boost/type_traits/is_bounded_array.hpp>
|
||||
#endif
|
||||
#include "check_integral_constant.hpp"
|
||||
|
||||
TT_TEST_BEGIN(is_bounded_array)
|
||||
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<void>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<int>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<int*>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<int&>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<int[2]>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<const int[3]>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<const volatile int[4]>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<int[5][6]>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<int[]>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<const int[]>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<const volatile int[]>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<int[][7]>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<int(&)[8]>::value, false);
|
||||
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_bounded_array<int(&&)[9]>::value, false);
|
||||
#endif
|
||||
|
||||
TT_TEST_END
|
@ -56,7 +56,7 @@ BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<foo1_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<foo2_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<foo3_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<foo4_t>::value, true);
|
||||
#if __cpp_noexcept_function_type
|
||||
#if defined(__cpp_noexcept_function_type) && !defined(BOOST_TT_NO_NOEXCEPT_SEPARATE_TYPE)
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<foo5_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<foo6_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<foo7_t>::value, true);
|
||||
@ -88,12 +88,54 @@ typedef void __stdcall sfoo2_t(int&, double);
|
||||
typedef void __stdcall sfoo3_t(int&, bool, int, int);
|
||||
typedef void __stdcall sfoo4_t(int, bool, int*, int[], int, int, int, int, int);
|
||||
|
||||
typedef void __cdecl cfoo0_t();
|
||||
typedef void __cdecl cfoo1_t(int);
|
||||
typedef void __cdecl cfoo2_t(int&, double);
|
||||
typedef void __cdecl cfoo3_t(int&, bool, int, int);
|
||||
typedef void __cdecl cfoo4_t(int, bool, int*, int[], int, int, int, int, int);
|
||||
|
||||
#ifndef __CLR_VER
|
||||
typedef void __fastcall ffoo0_t();
|
||||
typedef void __fastcall ffoo1_t(int);
|
||||
typedef void __fastcall ffoo2_t(int&, double);
|
||||
typedef void __fastcall ffoo3_t(int&, bool, int, int);
|
||||
typedef void __fastcall ffoo4_t(int, bool, int*, int[], int, int, int, int, int);
|
||||
#endif
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
typedef void __vectorcall vfoo0_t();
|
||||
typedef void __vectorcall vfoo1_t(int);
|
||||
typedef void __vectorcall vfoo2_t(int&, double);
|
||||
typedef void __vectorcall vfoo3_t(int&, bool, int, int);
|
||||
typedef void __vectorcall vfoo4_t(int, bool, int*, int[], int, int, int, int, int);
|
||||
#endif
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<sfoo0_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<sfoo1_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<sfoo2_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<sfoo3_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<sfoo4_t>::value, true);
|
||||
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<cfoo0_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<cfoo1_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<cfoo2_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<cfoo3_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<cfoo4_t>::value, true);
|
||||
|
||||
#ifndef __CLR_VER
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<ffoo0_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<ffoo1_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<ffoo2_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<ffoo3_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<ffoo4_t>::value, true);
|
||||
#endif
|
||||
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<vfoo0_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<vfoo1_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<vfoo2_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<vfoo3_t>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_function<vfoo4_t>::value, true);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef BOOST_TT_HAS_ASCCURATE_IS_FUNCTION
|
||||
@ -102,7 +144,9 @@ test_cv_qual(&X::f);
|
||||
test_cv_qual(&X::fc);
|
||||
test_cv_qual(&X::fv);
|
||||
test_cv_qual(&X::fcv);
|
||||
#ifndef BOOST_TT_NO_NOEXCEPT_SEPARATE_TYPE
|
||||
test_cv_qual(&X::noexcept_f);
|
||||
#endif
|
||||
test_cv_qual(&X::ref_f);
|
||||
test_cv_qual(&X::rvalue_f);
|
||||
|
||||
|
@ -53,7 +53,7 @@ BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<int&>::value, fal
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<const int&>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<const int[2] >::value, false);
|
||||
|
||||
#if __cpp_noexcept_function_type
|
||||
#if defined(__cpp_noexcept_function_type) && !defined(BOOST_TT_NO_NOEXCEPT_SEPARATE_TYPE)
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<mf5>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<mf6>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<mf7>::value, true);
|
||||
@ -67,17 +67,29 @@ BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<const int[] >::va
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<void>::value, false);
|
||||
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
|
||||
typedef void (__stdcall test_abc1::*scall_proc)();
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<scall_proc>::value, true);
|
||||
#ifndef __CLR_VER
|
||||
typedef void (__fastcall test_abc1::*fcall_proc)(int);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<fcall_proc>::value, true);
|
||||
#endif
|
||||
typedef void (__cdecl test_abc1::*ccall_proc)(int, long, double);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<ccall_proc>::value, true);
|
||||
#if (_MSC_VER >= 1800) && !defined(__CLR_VER) && (defined(_M_IX86_FP) && (_M_IX86_FP >= 2) || defined(_M_X64))
|
||||
typedef void(__vectorcall test_abc1::*vcall_proc)(int, long, double, double, double, double);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<vcall_proc>::value, true);
|
||||
#endif
|
||||
typedef void(__thiscall test_abc1::*tcall_proc)(int, long, double, double, double, double);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_function_pointer<tcall_proc>::value, true);
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef BOOST_TT_HAS_ASCCURATE_IS_FUNCTION
|
||||
test_tricky(&tricky_members::const_ref_proc);
|
||||
#ifndef BOOST_TT_NO_NOEXCEPT_SEPARATE_TYPE
|
||||
test_tricky(&tricky_members::noexcept_proc);
|
||||
#endif
|
||||
test_tricky(&tricky_members::rvalue_proc);
|
||||
#endif
|
||||
|
||||
|
@ -31,8 +31,10 @@ BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_pointer<foo0_t>::value, false);
|
||||
#ifdef BOOST_TT_TEST_MS_FUNC_SIGS
|
||||
typedef void (__stdcall test_abc1::*scall_proc)();
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_pointer<scall_proc>::value, true);
|
||||
#ifndef __CLR_VER
|
||||
typedef void (__fastcall test_abc1::*fcall_proc)(int);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_pointer<fcall_proc>::value, true);
|
||||
#endif
|
||||
typedef void (__cdecl test_abc1::*ccall_proc)(int, long, double);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_member_pointer<ccall_proc>::value, true);
|
||||
#endif
|
||||
|
35
test/is_unbounded_array_test.cpp
Normal file
35
test/is_unbounded_array_test.cpp
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
Copyright 2018 Glen Joseph Fernandes
|
||||
(glenjofe@gmail.com)
|
||||
|
||||
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)
|
||||
*/
|
||||
#ifdef TEST_STD
|
||||
#include <type_traits>
|
||||
#else
|
||||
#include <boost/type_traits/is_unbounded_array.hpp>
|
||||
#endif
|
||||
#include "check_integral_constant.hpp"
|
||||
|
||||
TT_TEST_BEGIN(is_unbounded_array)
|
||||
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<void>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<int>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<int*>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<int&>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<int[2]>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<const int[3]>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<const volatile int[4]>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<int[5][6]>::value, false);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<int[]>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<const int[]>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<const volatile int[]>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<int[][7]>::value, true);
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<int(&)[8]>::value, false);
|
||||
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
||||
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::is_unbounded_array<int(&&)[9]>::value, false);
|
||||
#endif
|
||||
|
||||
TT_TEST_END
|
@ -25,6 +25,10 @@ struct __declspec(align(64)) a64 { char m[64]; };
|
||||
struct __declspec(align(128)) a128 { char m[128]; };
|
||||
#endif
|
||||
|
||||
#ifdef __CLR_VER
|
||||
#pragma warning(disable:4793) // vaarg function
|
||||
#endif
|
||||
|
||||
void check_call2(...){}
|
||||
|
||||
template <class T>
|
||||
|
Reference in New Issue
Block a user