1 /* 2 Copyright 2014 Glen Joseph Fernandes 3 ([email protected]) 4 5 Distributed under the Boost Software License, Version 1.0. 6 (http://www.boost.org/LICENSE_1_0.txt) 7 */ 8 #ifndef BOOST_ALIGN_DETAIL_IS_ALIGNMENT_CONSTANT_HPP 9 #define BOOST_ALIGN_DETAIL_IS_ALIGNMENT_CONSTANT_HPP 10 11 #include <boost/align/detail/integral_constant.hpp> 12 #include <cstddef> 13 14 namespace boost { 15 namespace alignment { 16 namespace detail { 17 18 template<std::size_t N> 19 struct is_alignment_constant 20 : integral_constant<bool, (N > 0) && ((N & (N - 1)) == 0)> { }; 21 22 } /* detail */ 23 } /* alignment */ 24 } /* boost */ 25 26 #endif 27