gnss-sim/3rdparty/boost/mysql/detail/config.hpp

55 lines
1.2 KiB
C++
Raw Normal View History

2024-12-24 16:15:51 +00:00
//
// Copyright (c) 2019-2024 Ruben Perez Hidalgo (rubenperez038 at gmail dot com)
//
// 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 BOOST_MYSQL_DETAIL_CONFIG_HPP
#define BOOST_MYSQL_DETAIL_CONFIG_HPP
#include <boost/config.hpp>
// clang-format off
// Concepts
#if defined(__cpp_concepts) && defined(__cpp_lib_concepts)
#define BOOST_MYSQL_HAS_CONCEPTS
#endif
// C++14 conformance
#if BOOST_CXX_VERSION >= 201402L
#define BOOST_MYSQL_CXX14
#endif
// Consteval
#ifdef __cpp_consteval
#define BOOST_MYSQL_CONSTEVAL consteval
#else
#define BOOST_MYSQL_CONSTEVAL constexpr
#endif
// Separate build
#if defined(BOOST_MYSQL_SEPARATE_COMPILATION)
#define BOOST_MYSQL_DECL
#else
#define BOOST_MYSQL_HEADER_ONLY
#define BOOST_MYSQL_DECL inline
#endif
// Auto return type. Having this as a macro helps the documentation tool.
#ifdef BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION
#define BOOST_MYSQL_RETURN_TYPE(...) -> __VA_ARGS__
#else
#define BOOST_MYSQL_RETURN_TYPE(...)
#endif
// Chrono calendar types and functions
#if __cpp_lib_chrono >= 201907L
#define BOOST_MYSQL_HAS_LOCAL_TIME
#endif
// clang-format on
#endif