Expand version api and conversions
This commit is contained in:
@@ -5,6 +5,7 @@
|
||||
*/
|
||||
|
||||
#include "Version.hpp"
|
||||
#include <fmt/format.h>
|
||||
#include <charconv>
|
||||
#include <sstream>
|
||||
#include <regex>
|
||||
@@ -82,12 +83,20 @@ namespace OpenVulkano
|
||||
iss >> p.first >> p.second;
|
||||
return p;
|
||||
}
|
||||
|
||||
constexpr std::string ToString(uint32_t major, uint32_t minor, uint32_t patch, const uint32_t build)
|
||||
{
|
||||
if (build)
|
||||
return fmt::format("v{}.{}.{}.{}", major, minor, patch, build);
|
||||
else
|
||||
return fmt::format("v{}.{}.{}", major, minor, patch);
|
||||
}
|
||||
}
|
||||
|
||||
Version::Version(uint32_t major, uint32_t minor, uint32_t patch, const uint32_t build)
|
||||
: m_versionComponents(build ? std::initializer_list<uint32_t>{major, minor, patch, build} : std::initializer_list<uint32_t>{major, minor, patch})
|
||||
, m_buildNumber(build)
|
||||
, m_versionString("v" + std::to_string(major) + "." + std::to_string(minor) + "." + std::to_string(patch) + (build ? "." + std::to_string(build) : ""))
|
||||
, m_versionString(ToString(major, minor, patch, build))
|
||||
{}
|
||||
|
||||
Version::Version(std::string_view versionString, bool ignoreTags)
|
||||
|
||||
Reference in New Issue
Block a user