diff options
Diffstat (limited to 'deps/tao_tuple/28626e99/include/tao/seq/max.hpp')
-rw-r--r-- | deps/tao_tuple/28626e99/include/tao/seq/max.hpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/deps/tao_tuple/28626e99/include/tao/seq/max.hpp b/deps/tao_tuple/28626e99/include/tao/seq/max.hpp new file mode 100644 index 0000000000..b3f5be7976 --- /dev/null +++ b/deps/tao_tuple/28626e99/include/tao/seq/max.hpp @@ -0,0 +1,33 @@ +// The Art of C++ / Sequences +// Copyright (c) 2015 Daniel Frey + +#ifndef TAOCPP_SEQUENCES_INCLUDE_MAX_HPP +#define TAOCPP_SEQUENCES_INCLUDE_MAX_HPP + +#include "fold.hpp" + +#include <type_traits> + +namespace tao +{ + namespace seq + { + namespace impl + { + template< typename T, T A, T B > + using max = std::integral_constant< T, ( ( A > B ) ? A : B ) >; + } + + template< typename T, T... Ns > + struct max + : fold< impl::max, T, Ns... > + {}; + + template< typename T, T... Ns > + struct max< integer_sequence< T, Ns... > > + : max< T, Ns... > + {}; + } +} + +#endif // TAOCPP_SEQUENCES_INCLUDE_MAX_HPP |