2020-02-25 09:44:13 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include <string>
|
2021-08-12 14:53:51 +03:00
|
|
|
#include <optional>
|
2020-04-03 19:51:28 +03:00
|
|
|
#include <compare>
|
2020-02-25 09:44:13 +01:00
|
|
|
|
|
|
|
|
struct VersionHelper
|
|
|
|
|
{
|
2020-08-26 15:03:53 +03:00
|
|
|
VersionHelper(const size_t major, const size_t minor, const size_t revision);
|
2020-02-25 09:44:13 +01:00
|
|
|
|
2020-04-03 19:51:28 +03:00
|
|
|
auto operator<=>(const VersionHelper&) const = default;
|
2021-08-12 14:53:51 +03:00
|
|
|
|
|
|
|
|
static std::optional<VersionHelper> fromString(std::string_view s);
|
|
|
|
|
static std::optional<VersionHelper> fromString(std::wstring_view s);
|
2020-02-25 09:44:13 +01:00
|
|
|
|
2020-08-26 15:03:53 +03:00
|
|
|
size_t major;
|
|
|
|
|
size_t minor;
|
|
|
|
|
size_t revision;
|
2020-04-27 13:39:47 +03:00
|
|
|
|
|
|
|
|
std::wstring toWstring() const;
|
2021-03-17 16:49:07 +03:00
|
|
|
std::string toString() const;
|
2020-02-25 09:44:13 +01:00
|
|
|
};
|