AusweisApp2
Lade ...
Suche ...
Keine Treffer
VersionNumber.h
gehe zur Dokumentation dieser Datei
1
7#pragma once
8
9#include <QDebug>
10#include <QVersionNumber>
11
12namespace governikus
13{
14
16{
17 friend bool operator==(const VersionNumber& pLeft, const VersionNumber& pRight);
18
19 private:
20 QVersionNumber mVersionNumber;
21 QString mSuffix;
22
23 [[nodiscard]] auto getInfoFromSuffix(QLatin1Char pStart, QLatin1Char pEnd = QLatin1Char('-')) const;
24
25 public:
27 explicit VersionNumber(const QString& pVersion);
28
29 [[nodiscard]] const QVersionNumber& getVersionNumber() const;
30 [[nodiscard]] bool isDeveloperVersion() const;
31 [[nodiscard]] bool isBetaVersion() const;
32 [[nodiscard]] int getDistance() const;
33 [[nodiscard]] QString getBranch() const;
34 [[nodiscard]] QString getRevision() const;
35 [[nodiscard]] bool isDraft() const;
36 [[nodiscard]] QString getSuffix() const;
37};
38
39
40inline bool operator==(const VersionNumber& pLeft, const VersionNumber& pRight)
41{
42 return &pLeft == &pRight || (
43 pLeft.mVersionNumber == pRight.mVersionNumber &&
44 pLeft.mSuffix == pRight.mSuffix);
45}
46
47
48inline bool operator!=(const VersionNumber& pLeft, const VersionNumber& pRight)
49{
50 return !(pLeft == pRight);
51}
52
53
54inline bool operator<(const VersionNumber& pLeft, const VersionNumber& pRight)
55{
56 return pLeft.getVersionNumber() < pRight.getVersionNumber() ||
57 (pLeft.getVersionNumber() == pRight.getVersionNumber() && pLeft.getDistance() < pRight.getDistance());
58}
59
60
61inline bool operator>(const VersionNumber& pLeft, const VersionNumber& pRight)
62{
63 return pLeft.getVersionNumber() > pRight.getVersionNumber() ||
64 (pLeft.getVersionNumber() == pRight.getVersionNumber() && pLeft.getDistance() > pRight.getDistance());
65}
66
67
68inline QDebug operator<<(QDebug pDbg, const VersionNumber& pVersion)
69{
70 QDebugStateSaver saver(pDbg);
71 pDbg.noquote().nospace() << pVersion.getVersionNumber().toString() << pVersion.getSuffix();
72 return pDbg;
73}
74
75
76} // namespace governikus
Definition: VersionNumber.h:16
bool isDeveloperVersion() const
Definition: VersionNumber.cpp:41
friend bool operator==(const VersionNumber &pLeft, const VersionNumber &pRight)
Definition: VersionNumber.h:40
const QVersionNumber & getVersionNumber() const
Definition: VersionNumber.cpp:35
bool isBetaVersion() const
Definition: VersionNumber.cpp:47
QString getSuffix() const
Definition: VersionNumber.cpp:125
int getDistance() const
Definition: VersionNumber.cpp:83
bool isDraft() const
Definition: VersionNumber.cpp:119
QString getRevision() const
Definition: VersionNumber.cpp:105
VersionNumber(const QString &pVersion)
static const VersionNumber & getApplicationVersion()
Definition: VersionNumber.cpp:29
QString getBranch() const
Definition: VersionNumber.cpp:99
A simple template renderer.
Definition: ActivationContext.h:15
bool operator>(const VersionNumber &pLeft, const VersionNumber &pRight)
Definition: VersionNumber.h:61
bool operator!=(const CVCertificate &pLeft, const CVCertificate &pRight)
Definition: CVCertificate.h:81
bool operator<(const VersionNumber &pLeft, const VersionNumber &pRight)
Definition: VersionNumber.h:54
QDebug operator<<(QDebug pDbg, const CommandApdu &pCommandApdu)
Definition: CommandApdu.h:89
bool operator==(const CommandApdu &pLeft, const CommandApdu &pRight)
Definition: CommandApdu.h:100