4 #error "This file must be compiled as C++." 7 #include <arbiter/Version.h> 42 std::ostream &
describe (std::ostream &os)
const override;
54 return !(*
this <
other);
59 return other >= *
this;
77 std::ostream &
describe (std::ostream &os)
const override;
80 bool operator< (
const ArbiterSelectedVersion &other)
const;
82 bool operator> (
const ArbiterSelectedVersion &other)
const 87 bool operator<= (
const ArbiterSelectedVersion &other)
const 89 return !(other < *
this);
92 bool operator>= (
const ArbiterSelectedVersion &other)
const 94 return !(*
this < other);
98 struct ArbiterSelectedVersionList
final :
public Arbiter::
Base 110 std::ostream &
describe (std::ostream &os)
const override;
117 struct hash<ArbiterSemanticVersion>
final 120 size_t
operator() (
const ArbiterSemanticVersion &version)
const;
124 struct hash<ArbiterSelectedVersion>
final 127 size_t
operator() (
const ArbiterSelectedVersion &version)
const;
bool operator>=(const ArbiterSelectedVersion &other) const
static Arbiter::Optional< ArbiterSemanticVersion > fromString(const std::string &versionString)
Attempts to parse a well-formed semantic version from a string.
auto makeIteratorRange(const Collection &collection)
Creates an IteratorRange encompassing the entirety of the given read-only collection.
std::ostream & describe(std::ostream &os) const override
Arbiter::Optional< std::string > _buildMetadata
bool operator>(const ArbiterSelectedVersion &other) const
Arbiter::Optional< ArbiterSemanticVersion > _semanticVersion
bool operator>(const ArbiterSemanticVersion &other) const noexcept
std::vector< ArbiterSelectedVersion > _versions
bool operator==(const Arbiter::Base &other) const override
ArbiterSelectedVersionList()=default
std::ostream & describe(std::ostream &os) const override
bool operator>=(const ArbiterSemanticVersion &other) const noexcept
std::unique_ptr< Arbiter::Base > clone() const override
std::ostream & describe(std::ostream &os) const override
std::unique_ptr< Arbiter::Base > clone() const override
size_t operator()(const ArbiterSemanticVersion &version) const
std::unique_ptr< Arbiter::Base > clone() const override
ArbiterSemanticVersion(unsigned major, unsigned minor, unsigned patch, Arbiter::Optional< std::string > prereleaseVersion=Arbiter::Optional< std::string >(), Arbiter::Optional< std::string > buildMetadata=Arbiter::Optional< std::string >())
size_t operator()(const ArbiterSelectedVersion &version) const
ArbiterSelectedVersionList(std::vector< ArbiterSelectedVersion > versions)
Arbiter::Optional< std::string > _prereleaseVersion
ArbiterSelectedVersion(Arbiter::Optional< ArbiterSemanticVersion > semanticVersion, Metadata metadata)
bool operator==(const Arbiter::Base &other) const override
virtual std::unique_ptr< Base > clone() const =0
bool operator==(const Arbiter::Base &other) const override