Core: min/max now defined for 3 and 4 parameters

git-svn-id: svn://ultimatepp.org/upp/trunk@5923 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
cxl 2013-03-23 10:47:05 +00:00
parent ffdf3d509f
commit e8cf533eff

View file

@ -214,6 +214,16 @@ static void COMBINE(x, _fn)()
template <class T> inline const T& min(const T& a, const T& b) { return a < b ? a : b; }
template <class T> inline const T& max(const T& a, const T& b) { return a > b ? a : b; }
template <class T> inline const T& min(const T& a, const T& b, const T& c)
{ return min(a, min(b, c)); }
template <class T> inline const T& min(const T& a, const T& b, const T& c, const T& d)
{ return min(min(a, b), min(c, d)); }
template <class T> inline const T& max(const T& a, const T& b, const T& c)
{ return max(a, max(b, c)); }
template <class T> inline const T& max(const T& a, const T& b, const T& c, const T& d)
{ return max(max(a, b), max(c, d)); }
template <class T>
inline T minmax(T x, T _min, T _max) { return min(max(x, _min), _max); }