NCBI C++ ToolKit
|
#include <type_traits>
#include <cstdint>
#include <limits>
#include <stdexcept>
#include <array>
#include "ct_string_cxx17.hpp"
#include "ctsort_cxx14.hpp"
#include "ct_crc32.hpp"
Go to the source code of this file.
Go to the SVN repository for this file.
Namespaces | |
ncbi | |
Magic spell ;-) needed for some weird compilers... very empiric. | |
compile_time_bits | |
Macros | |
#define | ct_const_tuple std::tuple |
#define | const_tuple std::tuple |
#define | ct_const_array std::array |
#define | const_array std::array |
Typedefs | |
template<class T > | |
using | std::remove_cvref_t = typename remove_cvref< T >::type |
template<typename T > | |
using | compile_time_bits::array_elem_t = typename array_elem< T >::type |
template<typename T > | |
using | compile_time_bits::real_underlying_type_t = typename real_underlying_type< T >::type |
using | compile_time_bits::tag_DuplicatesYes = std::true_type |
using | compile_time_bits::tag_DuplicatesNo = std::false_type |
using | compile_time_bits::tag_SortByHashes = std::true_type |
using | compile_time_bits::tag_SortByValues = std::false_type |
Functions | |
template<class Enum > | |
constexpr std::underlying_type_t< Enum > | std::to_underlying (Enum e) noexcept |
template<typename T > | |
constexpr size_t | compile_time_bits::get_array_size (T &&) |
template<typename T , size_t N = array_size<T>::value, typename _Elem = array_elem_t<T>, std::size_t... I> | |
constexpr auto | compile_time_bits::to_array_impl (T &&a, std::index_sequence< I... >) -> std::array< _Elem, N > |
template<typename T , size_t N = array_size<T>::value> | |
constexpr auto | compile_time_bits::make_array (T &&a) |
template<typename T , size_t N> | |
constexpr auto | compile_time_bits::make_array (T const (&a)[N]) |
template<typename... TArgs, size_t N = sizeof...(TArgs), typename _Tuple = typename std::enable_if<(N>1), std::tuple<TArgs...>>::type, typename T = std::tuple_element_t<0, _Tuple>> | |
constexpr auto | compile_time_bits::make_array (TArgs &&...args) |
template<class Enum > | |
constexpr real_underlying_type_t< Enum > | compile_time_bits::to_real_underlying (Enum e) noexcept |
template<typename... TArgs> | |
constexpr size_t | std::size (const compile_time_bits::const_set_map_base< TArgs... > &_container) |
Variables | |
constexpr size_t | std::hardware_destructive_interference_size = 64 |
constexpr size_t | std::hardware_constructive_interference_size = 64 |
#define const_array std::array |
Definition at line 84 of file compile_time_bits.hpp.
#define const_tuple std::tuple |
Definition at line 80 of file compile_time_bits.hpp.
#define ct_const_array std::array |
Definition at line 83 of file compile_time_bits.hpp.
#define ct_const_tuple std::tuple |
Definition at line 79 of file compile_time_bits.hpp.
using std::remove_cvref_t = typedef typename remove_cvref<T>::type |
Definition at line 60 of file compile_time_bits.hpp.
|
constexpr |
Definition at line 736 of file compile_time_bits.hpp.
References compile_time_bits::const_set_map_base< _Traits, _Backend, _Duplicates >::size().
|
constexprnoexcept |
Definition at line 66 of file compile_time_bits.hpp.
References std::to_underlying().
Referenced by std::to_underlying().
|
constexpr |
Definition at line 93 of file compile_time_bits.hpp.
|
constexpr |
Definition at line 92 of file compile_time_bits.hpp.