Provides various type traits on generic types. More...
Include dependency graph for basic.hpp:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Namespaces | |
| namespace | bio |
| The main BioC++ namespace. | |
| namespace | bio::meta |
| The Meta module's namespace. | |
Typedefs | |
| template<typename t > | |
| using | default_initialisable_wrap_t = std::conditional_t< std::is_nothrow_default_constructible_v< std::remove_cvref_t< t > > &&constexpr_default_initializable< std::remove_cvref_t< t > >, std::remove_cvref_t< t >, std::type_identity< std::remove_cvref_t< t > > > |
| Return t as t if it is noexcept- and constexpr-default-constructible; else wrap it in std::type_identity. | |
| using | bio::meta::ignore_t = std::remove_cvref_t< decltype(std::ignore)> |
Return the type of std::ignore with const, volatile and references removed (type trait). | |
Variables | |
| template<typename... t> | |
| constexpr bool | bio::meta::always_false = false |
A trait that is always false. Can be used for static_assert(false). DO NOT SPECIALISE! | |
| template<typename t > | |
| constexpr bool | bio::meta::decays_to_ignore_v = std::is_same_v<std::remove_cvref_t<t>, ignore_t> |
Return whether the input type with const, volatile and references removed is std::ignore's type. (type trait). | |
Provides various type traits on generic types.