header_utils
Loading...
Searching...
No Matches
cpp11.h
1#pragma once
2#include "../min-cpp-version/cpp03.h"
3
4#if __cplusplus < 201103L && (!defined(_MSVC_LANG) || _MSVC_LANG < 201103L)
5#error "This file requires compiler and library support for the ISO C++ 2011 standard."
6#endif
7
8namespace ghassanpl
9{
10#if defined(__cpp_lib_type_identity) && __cpp_lib_type_identity >= 201806L
11 using std::type_identity;
12 using std::type_identity_t;
13#else
14 template <class T>
15 struct type_identity { using type = T; };
16
17 template <class T>
18 using type_identity_t = typename type_identity<T>::type;
19#endif
20
21 template <typename T>
22 constexpr T default_value() noexcept { return T{}; }
23 template <>
24 constexpr void default_value<void>() noexcept { }
25}
Primary namespace for everything in this library.
Definition align+rec2.h:10