Files

45 lines
872 B
Plaintext
Raw Permalink Normal View History

2025-02-12 09:54:05 -05:00
#pragma GCC system_header
#ifndef _LIBCXX_ALGORITHM
#define _LIBCXX_ALGORITHM
#include <__config>
#include <__undef_macros>
_LIBCXX_BEGIN_NAMESPACE_STD
template <typename T>
static inline constexpr T min(const T& a, const T& b)
{
return a < b ? a : b;
}
template <typename T>
static inline constexpr T max(const T& a, const T& b)
{
return a < b ? b : a;
}
template <class Iter, class T>
static constexpr Iter find(Iter first, Iter last, const T& value)
{
for (; first != last; ++first) {
if (*first == value) {
return first;
}
}
return last;
}
template <class InputIter, class OutputIter>
static constexpr OutputIter copy(InputIter first, InputIter last, OutputIter dist)
{
for (; first != last; ++first) {
*dist++ = *first;
}
return dist;
}
_LIBCXX_END_NAMESPACE_STD
#endif // _LIBCXX_ALGORITHM