mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-06-26 22:38:30 +00:00
Release Cosmopolitan v3.6.0
This release is an atomic upgrade to GCC 14.1.0 with C23 and C++23
This commit is contained in:
parent
62ace3623a
commit
5660ec4741
1585 changed files with 117353 additions and 271644 deletions
39
third_party/libcxx/__functional/binder2nd.h
vendored
39
third_party/libcxx/__functional/binder2nd.h
vendored
|
@ -21,30 +21,31 @@ _LIBCPP_BEGIN_NAMESPACE_STD
|
|||
|
||||
#if _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
template <class __Operation>
|
||||
template <class _Operation>
|
||||
class _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX11 binder2nd
|
||||
: public __unary_function<typename __Operation::first_argument_type, typename __Operation::result_type>
|
||||
{
|
||||
: public __unary_function<typename _Operation::first_argument_type, typename _Operation::result_type> {
|
||||
protected:
|
||||
__Operation op;
|
||||
typename __Operation::second_argument_type value;
|
||||
_Operation op;
|
||||
typename _Operation::second_argument_type value;
|
||||
|
||||
public:
|
||||
_LIBCPP_INLINE_VISIBILITY
|
||||
binder2nd(const __Operation& __x, const typename __Operation::second_argument_type __y)
|
||||
: op(__x), value(__y) {}
|
||||
_LIBCPP_INLINE_VISIBILITY typename __Operation::result_type operator()
|
||||
( typename __Operation::first_argument_type& __x) const
|
||||
{return op(__x, value);}
|
||||
_LIBCPP_INLINE_VISIBILITY typename __Operation::result_type operator()
|
||||
(const typename __Operation::first_argument_type& __x) const
|
||||
{return op(__x, value);}
|
||||
_LIBCPP_HIDE_FROM_ABI binder2nd(const _Operation& __x, const typename _Operation::second_argument_type __y)
|
||||
: op(__x), value(__y) {}
|
||||
_LIBCPP_HIDE_FROM_ABI typename _Operation::result_type
|
||||
operator()(typename _Operation::first_argument_type& __x) const {
|
||||
return op(__x, value);
|
||||
}
|
||||
_LIBCPP_HIDE_FROM_ABI typename _Operation::result_type
|
||||
operator()(const typename _Operation::first_argument_type& __x) const {
|
||||
return op(__x, value);
|
||||
}
|
||||
};
|
||||
|
||||
template <class __Operation, class _Tp>
|
||||
_LIBCPP_DEPRECATED_IN_CXX11 inline _LIBCPP_INLINE_VISIBILITY
|
||||
binder2nd<__Operation>
|
||||
bind2nd(const __Operation& __op, const _Tp& __x)
|
||||
{return binder2nd<__Operation>(__op, __x);}
|
||||
template <class _Operation, class _Tp>
|
||||
_LIBCPP_DEPRECATED_IN_CXX11 inline _LIBCPP_HIDE_FROM_ABI binder2nd<_Operation>
|
||||
bind2nd(const _Operation& __op, const _Tp& __x) {
|
||||
return binder2nd<_Operation>(__op, __x);
|
||||
}
|
||||
|
||||
#endif // _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_BINDERS)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue