Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-05-03 08:13:52

0001 //===----------------------------------------------------------------------===//
0002 //
0003 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
0004 // See https://llvm.org/LICENSE.txt for license information.
0005 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
0006 //
0007 //===----------------------------------------------------------------------===//
0008 
0009 #ifndef _LIBCPP___FUNCTIONAL_UNARY_FUNCTION_H
0010 #define _LIBCPP___FUNCTIONAL_UNARY_FUNCTION_H
0011 
0012 #include <__config>
0013 
0014 #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
0015 #  pragma GCC system_header
0016 #endif
0017 
0018 _LIBCPP_BEGIN_NAMESPACE_STD
0019 
0020 #if _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION)
0021 
0022 template <class _Arg, class _Result>
0023 struct _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX11 unary_function {
0024   typedef _Arg argument_type;
0025   typedef _Result result_type;
0026 };
0027 
0028 #endif // _LIBCPP_STD_VER <= 14
0029 
0030 template <class _Arg, class _Result>
0031 struct __unary_function_keep_layout_base {
0032 #if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_ENABLE_CXX20_REMOVED_BINDER_TYPEDEFS)
0033   using argument_type _LIBCPP_DEPRECATED_IN_CXX17 = _Arg;
0034   using result_type _LIBCPP_DEPRECATED_IN_CXX17   = _Result;
0035 #endif
0036 };
0037 
0038 #if _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION)
0039 _LIBCPP_DIAGNOSTIC_PUSH
0040 _LIBCPP_CLANG_DIAGNOSTIC_IGNORED("-Wdeprecated-declarations")
0041 template <class _Arg, class _Result>
0042 using __unary_function _LIBCPP_NODEBUG = unary_function<_Arg, _Result>;
0043 _LIBCPP_DIAGNOSTIC_POP
0044 #else
0045 template <class _Arg, class _Result>
0046 using __unary_function _LIBCPP_NODEBUG = __unary_function_keep_layout_base<_Arg, _Result>;
0047 #endif
0048 
0049 _LIBCPP_END_NAMESPACE_STD
0050 
0051 #endif // _LIBCPP___FUNCTIONAL_UNARY_FUNCTION_H