Maria GDK 5.0.0.737
Documentation of native code in develop branch
Loading...
Searching...
No Matches
Maria::SemanticVersionSpecification Class Reference

#include <MSemanticVersionSpecification.h>

Public Types

enum class  ReleaseStateQuery { AnyReleaseState , Release , Draft }
 Release state specification. Relates to "REL-STATE" after numeric version info MAJ.MIN.PAT[-REL-STATE]. More...
 
enum class  VersionQuery { AnyVersion , Exact , Newest }
 Determines how to select/match version numbers and. More...
 

Public Member Functions

const SemanticVersionNumberGetMinVersion () const
 Minimum version number or required version if "Exact" version type is set.
 
void SetMinVersion (const SemanticVersionNumber &minVersion)
 Minimum version number or required version if "Exact" version type is set.
 
const SemanticVersionNumberGetMaxVersion () const
 Max version number.
 
void SetMaxVersion (const SemanticVersionNumber &maxVersion)
 Max version number.
 
VersionQuery GetVersionQuery () const
 How to match against versions.
 
void SetVersionQuery (VersionQuery versionQuery)
 How to match against versions.
 
ReleaseStateQuery GetReleaseStateQuery () const
 Determines if draft, release or both version types should be included.
 
void SetReleaseStateQuery (const ReleaseStateQuery &relStateQuery)
 Determines if draft, release or both version types should be included.
 
bool Equals (const SemanticVersionSpecification &other) const
 
bool operator== (const SemanticVersionSpecification &other) const
 
bool IsMatch (const SemanticVersionNumber &candidateVersionNumber)
 
template<class InputIt , class OutputContainer >
void Matches (InputIt firstCandidate, InputIt lastCandidate, OutputContainer &result)
 
unsigned int getHashKey () const
 

Detailed Description

SemanticVersionSpecification - Short description. Detailed description.

Member Enumeration Documentation

◆ ReleaseStateQuery

Release state specification. Relates to "REL-STATE" after numeric version info MAJ.MIN.PAT[-REL-STATE].

Enumerator
AnyReleaseState 

Match for any release specification.

Release 

Match if no release state specification, ex 1.0.0. No match for 1.0.0-DRAFT.

Draft 

Match if draft version, ex 1.0.0-DRAFT.

◆ VersionQuery

Determines how to select/match version numbers and.

Enumerator
AnyVersion 

Matches any version number in range.

Exact 

Only matches exact version number, "MinVersion".

Newest 

If multiple matches in range, only match for highest version number. Note 2.0.0 > 1.99.99.

Member Function Documentation

◆ IsMatch()

bool Maria::SemanticVersionSpecification::IsMatch ( const SemanticVersionNumber candidateVersionNumber)
inline

Returns true if given version number matches specification

Parameters
candidateVersionNumber
Returns
True if candidate version number matches specification

◆ Matches()

template<class InputIt , class OutputContainer >
void Maria::SemanticVersionSpecification::Matches ( InputIt  firstCandidate,
InputIt  lastCandidate,
OutputContainer &  result 
)
inline

Returns all versions that matches specification Reads all versions from between firstCandidate and lastCandidate, and puts any matches in the output iterator result.


The documentation for this class was generated from the following file: