33#ifndef GKO_PUBLIC_CORE_BASE_VERSION_HPP_
34#define GKO_PUBLIC_CORE_BASE_VERSION_HPP_
40#include <ginkgo/config.hpp>
41#include <ginkgo/core/base/types.hpp>
80 const char*
const tag;
89inline bool operator!=(
const version& first,
const version& second)
91 return !(first == second);
94inline bool operator<(
const version& first,
const version& second)
96 if (first.major < second.major)
return true;
97 if (first.major == second.major && first.minor < second.minor)
return true;
98 if (first.major == second.major && first.minor == second.minor &&
99 first.patch < second.patch)
104inline bool operator<=(
const version& first,
const version& second)
106 return !(second < first);
109inline bool operator>(
const version& first,
const version& second)
111 return second < first;
114inline bool operator>=(
const version& first,
const version& second)
116 return !(first < second);
119#undef GKO_ENABLE_VERSION_COMPARISON
132 os <<
ver.major <<
"." <<
ver.minor <<
"." <<
ver.patch;
134 os <<
" (" <<
ver.tag <<
")";
225 return version{GKO_VERSION_MAJOR, GKO_VERSION_MINOR, GKO_VERSION_PATCH,
Ginkgo uses version numbers to label new features and to communicate backward compatibility guarantee...
Definition version.hpp:161
version dpcpp_version
Contains version information of the DPC++ module.
Definition version.hpp:220
version header_version
Contains version information of the header files.
Definition version.hpp:177
version cuda_version
Contains version information of the CUDA module.
Definition version.hpp:206
version reference_version
Contains version information of the reference module.
Definition version.hpp:192
version omp_version
Contains version information of the OMP module.
Definition version.hpp:199
version core_version
Contains version information of the core library.
Definition version.hpp:184
version hip_version
Contains version information of the HIP module.
Definition version.hpp:213
static const version_info & get()
Returns an instance of version_info.
Definition version.hpp:168
The Ginkgo namespace.
Definition abstract_factory.hpp:48
constexpr T one()
Returns the multiplicative identity for T.
Definition math.hpp:803
std::uint64_t uint64
64-bit unsigned integral type.
Definition types.hpp:166
constexpr bool operator!=(const dim< Dimensionality, DimensionType > &x, const dim< Dimensionality, DimensionType > &y)
Checks if two dim objects are different.
Definition dim.hpp:258
This structure is used to represent versions of various Ginkgo modules.
Definition version.hpp:54
const uint64 major
The major version number.
Definition version.hpp:63
const char *const tag
Addition tag string that describes the version in more detail.
Definition version.hpp:80
const uint64 patch
The patch version number.
Definition version.hpp:73
const uint64 minor
The minor version number.
Definition version.hpp:68