Mercurial > hg > CbC > CbC_llvm
comparison libcxx/include/__algorithm/transform.h @ 236:c4bab56944e8 llvm-original
LLVM 16
author | kono |
---|---|
date | Wed, 09 Nov 2022 17:45:10 +0900 |
parents | 79ff65ed7e25 |
children |
comparison
equal
deleted
inserted
replaced
232:70dce7da266c | 236:c4bab56944e8 |
---|---|
10 #define _LIBCPP___ALGORITHM_TRANSFORM_H | 10 #define _LIBCPP___ALGORITHM_TRANSFORM_H |
11 | 11 |
12 #include <__config> | 12 #include <__config> |
13 | 13 |
14 #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) | 14 #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) |
15 #pragma GCC system_header | 15 # pragma GCC system_header |
16 #endif | 16 #endif |
17 | |
18 _LIBCPP_PUSH_MACROS | |
19 #include <__undef_macros> | |
20 | 17 |
21 _LIBCPP_BEGIN_NAMESPACE_STD | 18 _LIBCPP_BEGIN_NAMESPACE_STD |
22 | 19 |
23 template <class _InputIterator, class _OutputIterator, class _UnaryOperation> | 20 template <class _InputIterator, class _OutputIterator, class _UnaryOperation> |
24 inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_AFTER_CXX17 | 21 inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_SINCE_CXX20 |
25 _OutputIterator | 22 _OutputIterator |
26 transform(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _UnaryOperation __op) | 23 transform(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _UnaryOperation __op) |
27 { | 24 { |
28 for (; __first != __last; ++__first, (void) ++__result) | 25 for (; __first != __last; ++__first, (void) ++__result) |
29 *__result = __op(*__first); | 26 *__result = __op(*__first); |
30 return __result; | 27 return __result; |
31 } | 28 } |
32 | 29 |
33 template <class _InputIterator1, class _InputIterator2, class _OutputIterator, class _BinaryOperation> | 30 template <class _InputIterator1, class _InputIterator2, class _OutputIterator, class _BinaryOperation> |
34 inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_AFTER_CXX17 | 31 inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_SINCE_CXX20 |
35 _OutputIterator | 32 _OutputIterator |
36 transform(_InputIterator1 __first1, _InputIterator1 __last1, _InputIterator2 __first2, | 33 transform(_InputIterator1 __first1, _InputIterator1 __last1, _InputIterator2 __first2, |
37 _OutputIterator __result, _BinaryOperation __binary_op) | 34 _OutputIterator __result, _BinaryOperation __binary_op) |
38 { | 35 { |
39 for (; __first1 != __last1; ++__first1, (void) ++__first2, ++__result) | 36 for (; __first1 != __last1; ++__first1, (void) ++__first2, ++__result) |
41 return __result; | 38 return __result; |
42 } | 39 } |
43 | 40 |
44 _LIBCPP_END_NAMESPACE_STD | 41 _LIBCPP_END_NAMESPACE_STD |
45 | 42 |
46 _LIBCPP_POP_MACROS | |
47 | |
48 #endif // _LIBCPP___ALGORITHM_TRANSFORM_H | 43 #endif // _LIBCPP___ALGORITHM_TRANSFORM_H |