Time Shield Library
C++ library for working with time
Loading...
Searching...
No Matches
config.hpp
Go to the documentation of this file.
1
#pragma once
2
#ifndef _TIME_SHIELD_CONFIG_HPP_INCLUDED
3
#define _TIME_SHIELD_CONFIG_HPP_INCLUDED
4
10
11
#if defined(_MSVC_LANG)
12
# define TIME_SHIELD_CXX_VERSION _MSVC_LANG
13
#else
14
# define TIME_SHIELD_CXX_VERSION __cplusplus
15
#endif
16
17
// Check and define macros based on the C++ standard version
18
#if TIME_SHIELD_CXX_VERSION >= 201703L
19
# define TIME_SHIELD_CPP17
20
#elif TIME_SHIELD_CXX_VERSION >= 201402L
21
# define TIME_SHIELD_CPP14
22
#elif TIME_SHIELD_CXX_VERSION >= 201103L
23
# define TIME_SHIELD_CPP11
24
#else
25
# error "C++11 or newer is required to compile this library."
26
#endif
27
28
// Configure support for `constexpr` and `if constexpr` based on the C++ standard
29
#ifdef TIME_SHIELD_CPP11
30
# define TIME_SHIELD_IF_CONSTEXPR
31
# define TIME_SHIELD_CONSTEXPR
32
#else
33
#ifdef TIME_SHIELD_CPP14
34
# define TIME_SHIELD_IF_CONSTEXPR
35
# define TIME_SHIELD_CONSTEXPR constexpr
36
#else
37
#ifdef TIME_SHIELD_CPP17
38
# define TIME_SHIELD_IF_CONSTEXPR constexpr
39
# define TIME_SHIELD_CONSTEXPR constexpr
40
#endif
41
#endif
42
#endif
43
44
#endif
// _TIME_SHIELD_CONFIG_HPP_INCLUDED
include
time_shield_cpp
time_shield
config.hpp
Generated by
1.13.2