mirror of
https://github.com/intel/llvm.git
synced 2026-02-09 01:52:26 +08:00
[libc++] Remove __member_pointer_traits_imp (#82081)
They aren't ever used, so they can be removed.
This commit is contained in:
@@ -11,8 +11,6 @@
|
||||
#define _LIBCPP___TYPE_TRAITS_INVOKE_H
|
||||
|
||||
#include <__config>
|
||||
#include <__type_traits/add_lvalue_reference.h>
|
||||
#include <__type_traits/apply_cv.h>
|
||||
#include <__type_traits/conditional.h>
|
||||
#include <__type_traits/decay.h>
|
||||
#include <__type_traits/enable_if.h>
|
||||
@@ -25,7 +23,6 @@
|
||||
#include <__type_traits/is_same.h>
|
||||
#include <__type_traits/is_void.h>
|
||||
#include <__type_traits/nat.h>
|
||||
#include <__type_traits/remove_cv.h>
|
||||
#include <__utility/declval.h>
|
||||
#include <__utility/forward.h>
|
||||
|
||||
@@ -35,197 +32,6 @@
|
||||
|
||||
_LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
struct __any {
|
||||
__any(...);
|
||||
};
|
||||
|
||||
template <class _MP, bool _IsMemberFunctionPtr, bool _IsMemberObjectPtr>
|
||||
struct __member_pointer_traits_imp {};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param...), true, false> {
|
||||
typedef _Class _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param..., ...), true, false> {
|
||||
typedef _Class _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param..., ...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param...) const, true, false> {
|
||||
typedef _Class const _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param..., ...) const, true, false> {
|
||||
typedef _Class const _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param..., ...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param...) volatile, true, false> {
|
||||
typedef _Class volatile _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param..., ...) volatile, true, false> {
|
||||
typedef _Class volatile _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param..., ...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param...) const volatile, true, false> {
|
||||
typedef _Class const volatile _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param..., ...) const volatile, true, false> {
|
||||
typedef _Class const volatile _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param..., ...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param...)&, true, false> {
|
||||
typedef _Class& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param..., ...)&, true, false> {
|
||||
typedef _Class& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param..., ...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param...) const&, true, false> {
|
||||
typedef _Class const& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param..., ...) const&, true, false> {
|
||||
typedef _Class const& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param..., ...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param...) volatile&, true, false> {
|
||||
typedef _Class volatile& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param..., ...) volatile&, true, false> {
|
||||
typedef _Class volatile& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param..., ...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param...) const volatile&, true, false> {
|
||||
typedef _Class const volatile& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param..., ...) const volatile&, true, false> {
|
||||
typedef _Class const volatile& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param..., ...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param...)&&, true, false> {
|
||||
typedef _Class&& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param..., ...)&&, true, false> {
|
||||
typedef _Class&& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param..., ...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param...) const&&, true, false> {
|
||||
typedef _Class const&& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param..., ...) const&&, true, false> {
|
||||
typedef _Class const&& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param..., ...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param...) volatile&&, true, false> {
|
||||
typedef _Class volatile&& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param..., ...) volatile&&, true, false> {
|
||||
typedef _Class volatile&& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param..., ...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param...) const volatile&&, true, false> {
|
||||
typedef _Class const volatile&& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class, class... _Param>
|
||||
struct __member_pointer_traits_imp<_Rp (_Class::*)(_Param..., ...) const volatile&&, true, false> {
|
||||
typedef _Class const volatile&& _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
typedef _Rp(_FnType)(_Param..., ...);
|
||||
};
|
||||
|
||||
template <class _Rp, class _Class>
|
||||
struct __member_pointer_traits_imp<_Rp _Class::*, false, true> {
|
||||
typedef _Class _ClassType;
|
||||
typedef _Rp _ReturnType;
|
||||
};
|
||||
|
||||
template <class _MP>
|
||||
struct __member_pointer_traits
|
||||
: public __member_pointer_traits_imp<__remove_cv_t<_MP>,
|
||||
is_member_function_pointer<_MP>::value,
|
||||
is_member_object_pointer<_MP>::value> {
|
||||
// typedef ... _ClassType;
|
||||
// typedef ... _ReturnType;
|
||||
// typedef ... _FnType;
|
||||
};
|
||||
|
||||
template <class _DecayedFp>
|
||||
struct __member_pointer_class_type {};
|
||||
|
||||
@@ -285,7 +91,7 @@ using __enable_if_bullet6 =
|
||||
// fall back - none of the bullets
|
||||
|
||||
template <class... _Args>
|
||||
__nat __invoke(__any, _Args&&... __args);
|
||||
__nat __invoke(_Args&&... __args);
|
||||
|
||||
// bullets 1, 2 and 3
|
||||
|
||||
|
||||
Reference in New Issue
Block a user