clang  6.0.0svn
Public Member Functions | Friends | List of all members
clang::VersionTuple Class Reference

Represents a version number in the form major[.minor[.subminor[.build]]]. More...

#include "clang/Basic/VersionTuple.h"

Public Member Functions

 VersionTuple ()
 
 VersionTuple (unsigned Major)
 
 VersionTuple (unsigned Major, unsigned Minor, bool UsesUnderscores=false)
 
 VersionTuple (unsigned Major, unsigned Minor, unsigned Subminor, bool UsesUnderscores=false)
 
 VersionTuple (unsigned Major, unsigned Minor, unsigned Subminor, unsigned Build, bool UsesUnderscores=false)
 
bool empty () const
 Determine whether this version information is empty (e.g., all version components are zero). More...
 
unsigned getMajor () const
 Retrieve the major version number. More...
 
Optional< unsigned > getMinor () const
 Retrieve the minor version number, if provided. More...
 
Optional< unsigned > getSubminor () const
 Retrieve the subminor version number, if provided. More...
 
Optional< unsigned > getBuild () const
 Retrieve the build version number, if provided. More...
 
bool usesUnderscores () const
 
void UseDotAsSeparator ()
 
std::string getAsString () const
 Retrieve a string representation of the version number. More...
 
bool tryParse (StringRef string)
 Try to parse the given string as a version number. More...
 

Friends

bool operator== (const VersionTuple &X, const VersionTuple &Y)
 Determine if two version numbers are equivalent. More...
 
bool operator!= (const VersionTuple &X, const VersionTuple &Y)
 Determine if two version numbers are not equivalent. More...
 
bool operator< (const VersionTuple &X, const VersionTuple &Y)
 Determine whether one version number precedes another. More...
 
bool operator> (const VersionTuple &X, const VersionTuple &Y)
 Determine whether one version number follows another. More...
 
bool operator<= (const VersionTuple &X, const VersionTuple &Y)
 Determine whether one version number precedes or is equivalent to another. More...
 
bool operator>= (const VersionTuple &X, const VersionTuple &Y)
 Determine whether one version number follows or is equivalent to another. More...
 

Detailed Description

Represents a version number in the form major[.minor[.subminor[.build]]].

Definition at line 26 of file VersionTuple.h.

Constructor & Destructor Documentation

◆ VersionTuple() [1/5]

clang::VersionTuple::VersionTuple ( )
inline

Definition at line 41 of file VersionTuple.h.

Referenced by tryParse().

◆ VersionTuple() [2/5]

clang::VersionTuple::VersionTuple ( unsigned  Major)
inlineexplicit

Definition at line 45 of file VersionTuple.h.

◆ VersionTuple() [3/5]

clang::VersionTuple::VersionTuple ( unsigned  Major,
unsigned  Minor,
bool  UsesUnderscores = false 
)
inlineexplicit

Definition at line 49 of file VersionTuple.h.

◆ VersionTuple() [4/5]

clang::VersionTuple::VersionTuple ( unsigned  Major,
unsigned  Minor,
unsigned  Subminor,
bool  UsesUnderscores = false 
)
inlineexplicit

Definition at line 55 of file VersionTuple.h.

◆ VersionTuple() [5/5]

clang::VersionTuple::VersionTuple ( unsigned  Major,
unsigned  Minor,
unsigned  Subminor,
unsigned  Build,
bool  UsesUnderscores = false 
)
inlineexplicit

Definition at line 61 of file VersionTuple.h.

Member Function Documentation

◆ empty()

bool clang::VersionTuple::empty ( ) const
inline

◆ getAsString()

std::string VersionTuple::getAsString ( ) const

◆ getBuild()

Optional<unsigned> clang::VersionTuple::getBuild ( ) const
inline

Retrieve the build version number, if provided.

Definition at line 91 of file VersionTuple.h.

References clang::None.

Referenced by clang::operator<<().

◆ getMajor()

unsigned clang::VersionTuple::getMajor ( ) const
inline

◆ getMinor()

Optional<unsigned> clang::VersionTuple::getMinor ( ) const
inline

Retrieve the minor version number, if provided.

Definition at line 77 of file VersionTuple.h.

References clang::None.

Referenced by clang::ASTWriter::AddVersionTuple(), clang::driver::toolchains::MSVCToolChain::ComputeEffectiveClangTriple(), clang::operator<<(), and ParseLangArgs().

◆ getSubminor()

Optional<unsigned> clang::VersionTuple::getSubminor ( ) const
inline

Retrieve the subminor version number, if provided.

Definition at line 84 of file VersionTuple.h.

References clang::None.

Referenced by clang::ASTWriter::AddVersionTuple(), clang::driver::toolchains::MSVCToolChain::ComputeEffectiveClangTriple(), clang::operator<<(), and ParseLangArgs().

◆ tryParse()

bool VersionTuple::tryParse ( StringRef  string)

Try to parse the given string as a version number.

Returns
true if the string does not match the regular expression [0-9]+(.[0-9]+){0,3}

Definition at line 59 of file VersionTuple.cpp.

References parseInt(), and VersionTuple().

Referenced by clang::driver::ToolChain::computeMSVCVersion(), ParseLangArgs(), and clang::ObjCRuntime::tryParse().

◆ UseDotAsSeparator()

void clang::VersionTuple::UseDotAsSeparator ( )
inline

Definition at line 101 of file VersionTuple.h.

◆ usesUnderscores()

bool clang::VersionTuple::usesUnderscores ( ) const
inline

Definition at line 97 of file VersionTuple.h.

Referenced by clang::operator<<().

Friends And Related Function Documentation

◆ operator!=

bool operator!= ( const VersionTuple X,
const VersionTuple Y 
)
friend

Determine if two version numbers are not equivalent.

If not provided, minor and subminor version numbers are considered to be zero.

Definition at line 116 of file VersionTuple.h.

◆ operator<

bool operator< ( const VersionTuple X,
const VersionTuple Y 
)
friend

Determine whether one version number precedes another.

If not provided, minor and subminor version numbers are considered to be zero.

Definition at line 124 of file VersionTuple.h.

◆ operator<=

bool operator<= ( const VersionTuple X,
const VersionTuple Y 
)
friend

Determine whether one version number precedes or is equivalent to another.

If not provided, minor and subminor version numbers are considered to be zero.

Definition at line 142 of file VersionTuple.h.

◆ operator==

bool operator== ( const VersionTuple X,
const VersionTuple Y 
)
friend

Determine if two version numbers are equivalent.

If not provided, minor and subminor version numbers are considered to be zero.

Definition at line 107 of file VersionTuple.h.

◆ operator>

bool operator> ( const VersionTuple X,
const VersionTuple Y 
)
friend

Determine whether one version number follows another.

If not provided, minor and subminor version numbers are considered to be zero.

Definition at line 133 of file VersionTuple.h.

◆ operator>=

bool operator>= ( const VersionTuple X,
const VersionTuple Y 
)
friend

Determine whether one version number follows or is equivalent to another.

If not provided, minor and subminor version numbers are considered to be zero.

Definition at line 151 of file VersionTuple.h.


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