1 2 // Copyright Oliver Kowalke 2014. 3 // Distributed under the Boost Software License, Version 1.0. 4 // (See accompanying file LICENSE_1_0.txt or copy at 5 // http://www.boost.org/LICENSE_1_0.txt) 6 7 #ifndef BOOST_CONTEXT_STACK_TRAITS_H 8 #define BOOST_CONTEXT_STACK_TRAITS_H 9 10 #include <cstddef> 11 12 #include <boost/config.hpp> 13 14 #include <boost/context/detail/config.hpp> 15 16 #ifdef BOOST_HAS_ABI_HEADERS 17 # include BOOST_ABI_PREFIX 18 #endif 19 20 namespace boost { 21 namespace context { 22 23 struct BOOST_CONTEXT_DECL stack_traits 24 { 25 static bool is_unbounded() BOOST_NOEXCEPT_OR_NOTHROW; 26 27 static std::size_t page_size() BOOST_NOEXCEPT_OR_NOTHROW; 28 29 static std::size_t default_size() BOOST_NOEXCEPT_OR_NOTHROW; 30 31 static std::size_t minimum_size() BOOST_NOEXCEPT_OR_NOTHROW; 32 33 static std::size_t maximum_size() BOOST_NOEXCEPT_OR_NOTHROW; 34 }; 35 36 }} 37 38 #ifdef BOOST_HAS_ABI_HEADERS 39 # include BOOST_ABI_SUFFIX 40 #endif 41 42 #endif // BOOST_CONTEXT_STACK_TRAITS_H 43