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

Provides platform and dependency checks. More...

#include <cinttypes>
#include <ciso646>
#include <cstddef>
#include <string_view>
+ Include dependency graph for core.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::alphabet
 The alphabet module's namespace.
 
namespace  bio::alphabet::custom
 A namespace for third party and standard library specialisations of BioC++ customisation points.
 
namespace  bio::alphabet::literals
 An inline namespace for alphabet literals. It exists to safely allow using namespace.
 
namespace  bio::meta
 The Meta module's namespace.
 
namespace  bio::meta::literals
 An inline namespace for meta literals. It exists to safely allow using namespace.
 
namespace  bio::ranges
 The ranges module's namespace.
 
namespace  bio::ranges::views
 The BioC++ namespace for views.
 

Macros

#define BIOCPP_CORE_VERSION    (BIOCPP_CORE_VERSION_MAJOR * 10000 + BIOCPP_CORE_VERSION_MINOR * 100 + BIOCPP_CORE_VERSION_PATCH)
 The full version as MACRO (number).
 
#define BIOCPP_CORE_VERSION_CSTRING
 The full version as null terminated string.
 
#define BIOCPP_CORE_VERSION_CSTRING_HELPER_FUNC(MAJOR, MINOR, PATCH)
 Converts version numbers to string.
 
#define BIOCPP_CORE_VERSION_CSTRING_HELPER_STR(str)   #str
 Converts a number to a string. Preprocessor needs this indirection to properly expand the values to strings.
 
#define BIOCPP_CORE_VERSION_MAJOR   0
 The major version as MACRO.
 
#define BIOCPP_CORE_VERSION_MINOR   7
 The minor version as MACRO.
 
#define BIOCPP_CORE_VERSION_PATCH   0
 The patch version as MACRO.
 
#define BIOCPP_DISABLE_LEGACY_STD_DIAGNOSTIC
 This disables the warning you would get if -D_GLIBCXX_USE_CXX11_ABI=0 is set.
 
#define BIOCPP_IS_CONSTEXPR(...)   std::integral_constant<bool, __builtin_constant_p((__VA_ARGS__, 0))>::value
 Returns true if the expression passed to this macro can be evaluated at compile time, false otherwise.
 
#define BIOCPP_IS_SAME(...)   std::is_same_v<__VA_ARGS__>
 A macro that behaves like std::is_same_v, except that it doesn't need to instantiate the template on GCC and Clang.
 
#define BIOCPP_UNREACHABLE   __builtin_unreachable(); /* GCOVR_EXCL_LINE */
 A macro to mark unreachable code.
 
#define BIOCPP_WORKAROUND_CLANG_58078   0
 See https://github.com/llvm/llvm-project/issues/58078.
 
#define BIOCPP_WORKAROUND_CLANG_59501   0
 See https://github.com/llvm/llvm-project/issues/59501.
 
#define BIOCPP_WORKAROUND_GCC_96070   0
 Warn about gcc 10.0 and gcc 10.1 Known Issues:
 

Variables

constexpr std::string_view bio::biocpp_core_version = BIOCPP_CORE_VERSION_CSTRING
 The full version as std::string_view.
 
constexpr size_t bio::biocpp_core_version_major = BIOCPP_CORE_VERSION_MAJOR
 The major version.
 
constexpr size_t bio::biocpp_core_version_minor = BIOCPP_CORE_VERSION_MINOR
 The minor version.
 
constexpr size_t bio::biocpp_core_version_patch = BIOCPP_CORE_VERSION_PATCH
 The patch version.
 

Detailed Description

Provides platform and dependency checks.

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

Macro Definition Documentation

◆ BIOCPP_CORE_VERSION_CSTRING

#define BIOCPP_CORE_VERSION_CSTRING
Value:
#define BIOCPP_CORE_VERSION_MAJOR
The major version as MACRO.
Definition: core.hpp:113
#define BIOCPP_CORE_VERSION_CSTRING_HELPER_FUNC(MAJOR, MINOR, PATCH)
Converts version numbers to string.
Definition: core.hpp:129
#define BIOCPP_CORE_VERSION_PATCH
The patch version as MACRO.
Definition: core.hpp:117
#define BIOCPP_CORE_VERSION_MINOR
The minor version as MACRO.
Definition: core.hpp:115

The full version as null terminated string.

◆ BIOCPP_CORE_VERSION_CSTRING_HELPER_FUNC

#define BIOCPP_CORE_VERSION_CSTRING_HELPER_FUNC (   MAJOR,
  MINOR,
  PATCH 
)
Value:
#define BIOCPP_CORE_VERSION_CSTRING_HELPER_STR(str)
Converts a number to a string. Preprocessor needs this indirection to properly expand the values to s...
Definition: core.hpp:126

Converts version numbers to string.

◆ BIOCPP_WORKAROUND_GCC_96070