BioC++ core-0.7.0
The Modern C++ libraries for Bioinformatics.
 
Loading...
Searching...
No Matches
basic.hpp File Reference

Provides various type traits on generic types. More...

#include <tuple>
#include <type_traits>
#include <bio/meta/concept/core_language.hpp>
+ 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).
 

Detailed Description

Provides various type traits on generic types.

Author
Hannes Hauswedell <hannes.hauswedell AT decode.is>