Add constexpr version of maximum to algorithm

Add the constexpr version of max which is only available in std since c++14.
Besides being a logical addition next to the already implemented constexpr version of min, there are actually other files, even in Swift/Basic itself, which re-implement this functionality, such as PrefixMap.h. Once this is implemented here, the functionality can be re-used in those other locations, instead of re-implemented each time.
This commit is contained in:
danra
2016-03-25 00:58:09 +02:00
parent f557a3253d
commit 978e851a0e

View File

@@ -24,6 +24,12 @@ namespace swift {
constexpr const T& min(const T &a, const T &b) {
return !(b < a) ? a : b;
}
/// Returns the maximum of `a` and `b`, or `a` if they are equivalent.
template <typename T>
constexpr const T& max(const T &a, const T &b) {
return (a < b) ? b : a;
}
} // end namespace swift
#endif /* SWIFT_BASIC_ALGORITHM_H */