/*============================================================================= Copyright (c) 2011-2013 Bolero MURAKAMI https://github.com/bolero-MURAKAMI/Sprout Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) =============================================================================*/ #ifndef SPROUT_CONFIG_AUTO_CONFIG_HPP #define SPROUT_CONFIG_AUTO_CONFIG_HPP #include #include // // SPROUT_CONFIG_DISABLE_CONSTEXPR // #ifndef SPROUT_CONFIG_DISABLE_CONSTEXPR # ifdef SPROUT_NO_CXX11_CONSTEXPR # define SPROUT_CONFIG_DISABLE_CONSTEXPR # endif // #ifdef SPROUT_NO_CXX11_CONSTEXPR #endif // #ifndef SPROUT_CONFIG_DISABLE_CONSTEXPR // // SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR // #ifndef SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR # ifdef SPROUT_NO_CXX14_CONSTEXPR # define SPROUT_CONFIG_DISABLE_CXX14_CONSTEXPR # endif // #ifdef SPROUT_NO_CXX14_CONSTEXPR #endif // #ifndef SPROUT_CONFIG_DISABLE_CONSTEXPR // // SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS // #ifndef SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS # ifdef SPROUT_NO_CXX11_DEFAULTED_FUNCTIONS # define SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS # endif // #ifdef SPROUT_NO_CXX11_CONSTEXPR #endif // #ifndef SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS // // SPROUT_CONFIG_DISABLE_DELETED_FUNCTIONS // #ifndef SPROUT_CONFIG_DISABLE_DELETED_FUNCTIONS # ifdef SPROUT_NO_CXX11_DELETED_FUNCTIONS # define SPROUT_CONFIG_DISABLE_DELETED_FUNCTIONS # endif // #ifdef SPROUT_NO_CXX11_CONSTEXPR #endif // #ifndef SPROUT_CONFIG_DISABLE_DELETED_FUNCTIONS // // SPROUT_CONFIG_DISABLE_EXPLICIT_CONVERSION_OPERATORS // #ifndef SPROUT_CONFIG_DISABLE_EXPLICIT_CONVERSION_OPERATORS # ifdef SPROUT_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS # define SPROUT_CONFIG_DISABLE_EXPLICIT_CONVERSION_OPERATORS # endif // #ifdef SPROUT_NO_CXX11_CONSTEXPR #endif // #ifndef SPROUT_CONFIG_DISABLE_EXPLICIT_CONVERSION_OPERATORS // // SPROUT_CONFIG_DISABLE_NOEXCEPT // #ifndef SPROUT_CONFIG_DISABLE_NOEXCEPT # ifdef SPROUT_NO_CXX11_NOEXCEPT # define SPROUT_CONFIG_DISABLE_NOEXCEPT # endif // #ifdef SPROUT_NO_CXX11_NOEXCEPT #endif // #ifndef SPROUT_CONFIG_DISABLE_NOEXCEPT // // SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES // #ifndef SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES # ifdef SPROUT_NO_CXX11_TEMPLATE_ALIASES # define SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES # endif // #ifdef SPROUT_NO_CXX11_TEMPLATE_ALIASES #endif // #ifndef SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES // // SPROUT_USE_USER_DEFINED_LITERALS // #ifndef SPROUT_USE_USER_DEFINED_LITERALS # ifdef SPROUT_NO_CXX11_USER_DEFINED_LITERALS # define SPROUT_CONFIG_DISABLE_USER_DEFINED_LITERALS # endif // #ifdef SPROUT_NO_CXX11_USER_DEFINED_LITERALS #endif // #ifndef SPROUT_USE_USER_DEFINED_LITERALS // // SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS // #ifndef SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS # ifdef SPROUT_NO_CXX11_DELEGATING_CONSTRUCTORS # define SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS # endif // #ifdef SPROUT_NO_CXX11_DELEGATING_CONSTRUCTORS #endif // #ifndef SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS // // SPROUT_CONFIG_DISABLE_UNICODE_LITERALS // #ifndef SPROUT_CONFIG_DISABLE_UNICODE_LITERALS # ifdef SPROUT_NO_CXX11_UNICODE_LITERALS # define SPROUT_CONFIG_DISABLE_UNICODE_LITERALS # endif // #ifdef SPROUT_NO_CXX11_UNICODE_LITERALS #endif // #ifndef SPROUT_CONFIG_DISABLE_UNICODE_LITERALS // // SPROUT_CONFIG_USE_SSCRISK_CEL // // // SPROUT_CONFIG_DISABLE_BUILTIN_CMATH_FUNCTION // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_CMATH_FUNCTION # ifndef SPROUT_HAS_CONSTEXPR_CMATH_FUNCTION # define SPROUT_CONFIG_DISABLE_BUILTIN_CMATH_FUNCTION # endif // #ifdef SPROUT_HAS_CONSTEXPR_CMATH_FUNCTION #endif // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_CMATH_FUNCTION // // SPROUT_CONFIG_DISABLE_BUILTIN_BIT_OPERATION // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_BIT_OPERATION # ifndef SPROUT_HAS_CONSTEXPR_BIT_OPERATION # define SPROUT_CONFIG_DISABLE_BUILTIN_BIT_OPERATION # endif // #ifdef SPROUT_HAS_CONSTEXPR_BIT_OPERATION #endif // #ifndef SPROUT_CONFIG_DISABLE_BUILTIN_BIT_OPERATION // // SPROUT_CONFIG_DISABLE_SUPPORT_TEMPORARY_CONTAINER_ITERATION // SPROUT_CONFIG_SUPPORT_TEMPORARY_CONTAINER_ITERATION // #ifndef SPROUT_CONFIG_DISABLE_SUPPORT_TEMPORARY_CONTAINER_ITERATION # define SPROUT_CONFIG_SUPPORT_TEMPORARY_CONTAINER_ITERATION #endif // #ifndef SPROUT_CONFIG_DISABLE_SUPPORT_TEMPORARY_CONTAINER_ITERATION #include #endif // #ifndef SPROUT_CONFIG_AUTO_CONFIG_HPP