clang  7.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)
 
 VersionTuple (unsigned Major, unsigned Minor, unsigned Subminor)
 
 VersionTuple (unsigned Major, unsigned Minor, unsigned Subminor, unsigned Build)
 
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...
 
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 39 of file VersionTuple.h.

Referenced by tryParse().

◆ VersionTuple() [2/5]

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

Definition at line 43 of file VersionTuple.h.

◆ VersionTuple() [3/5]

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

Definition at line 47 of file VersionTuple.h.

◆ VersionTuple() [4/5]

clang::VersionTuple::VersionTuple ( unsigned  Major,
unsigned  Minor,
unsigned  Subminor 
)
inlineexplicit

Definition at line 51 of file VersionTuple.h.

◆ VersionTuple() [5/5]

clang::VersionTuple::VersionTuple ( unsigned  Major,
unsigned  Minor,
unsigned  Subminor,
unsigned  Build 
)
inlineexplicit

Definition at line 55 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 84 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 70 of file VersionTuple.h.

References clang::None.

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

◆ getSubminor()

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

Retrieve the subminor 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(), and clang::operator<<().

◆ 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(), and clang::ObjCRuntime::tryParse().

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 101 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 109 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 127 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 92 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 118 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 136 of file VersionTuple.h.


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