clang API Documentation

Public Types | Public Member Functions
clang::driver::Multilib Class Reference

#include <Multilib.h>

List of all members.

Public Types

typedef std::vector< std::string > flags_list

Public Member Functions

 Multilib (StringRef GCCSuffix="", StringRef OSSuffix="", StringRef IncludeSuffix="")
const std::string & gccSuffix () const
 Get the detected GCC installation path suffix for the multi-arch target variant. Always starts with a '/', unless empty.
MultilibgccSuffix (StringRef S)
 Set the GCC installation path suffix.
const std::string & osSuffix () const
 Get the detected os path suffix for the multi-arch target variant. Always starts with a '/', unless empty.
MultilibosSuffix (StringRef S)
 Set the os path suffix.
const std::string & includeSuffix () const
 Get the include directory suffix. Always starts with a '/', unless empty.
MultilibincludeSuffix (StringRef S)
 Set the include directory suffix.
const flags_listflags () const
 Get the flags that indicate or contraindicate this multilib's use All elements begin with either '+' or '-'.
flags_listflags ()
Multilibflag (StringRef F)
 Add a flag to the flags list.
void print (raw_ostream &OS) const
 print summary of the Multilib
bool isValid () const
 Check whether any of the 'against' flags contradict the 'for' flags.
bool isDefault () const
 Check whether the default is selected.
bool operator== (const Multilib &Other) const

Detailed Description

This corresponds to a single GCC Multilib, or a segment of one controlled by a command line flag

Definition at line 26 of file Multilib.h.


Member Typedef Documentation

typedef std::vector<std::string> clang::driver::Multilib::flags_list

Definition at line 28 of file Multilib.h.


Constructor & Destructor Documentation

Multilib::Multilib ( StringRef  GCCSuffix = "",
StringRef  OSSuffix = "",
StringRef  IncludeSuffix = "" 
)

Definition at line 59 of file Multilib.cpp.

References normalizePathSegment().


Member Function Documentation

Multilib& clang::driver::Multilib::flag ( StringRef  F) [inline]

Add a flag to the flags list.

Definition at line 75 of file Multilib.h.

Referenced by findBiarchMultilibs(), and findMIPSMultilibs().

const flags_list& clang::driver::Multilib::flags ( ) const [inline]

Get the flags that indicate or contraindicate this multilib's use All elements begin with either '+' or '-'.

Definition at line 72 of file Multilib.h.

Referenced by compose(), clang::driver::MultilibSet::Maybe(), and clang::driver::MultilibSet::select().

Definition at line 73 of file Multilib.h.

const std::string& clang::driver::Multilib::gccSuffix ( ) const [inline]

Get the detected GCC installation path suffix for the multi-arch target variant. Always starts with a '/', unless empty.

Definition at line 42 of file Multilib.h.

Referenced by compose(), clang::driver::MultilibSet::FilterOut(), findBiarchMultilibs(), findMIPSMultilibs(), clang::driver::toolchains::Linux::Linux(), and operator==().

Multilib & Multilib::gccSuffix ( StringRef  S)

Set the GCC installation path suffix.

Definition at line 67 of file Multilib.cpp.

References normalizePathSegment(), and S.

const std::string& clang::driver::Multilib::includeSuffix ( ) const [inline]

Get the include directory suffix. Always starts with a '/', unless empty.

Definition at line 62 of file Multilib.h.

Referenced by clang::driver::toolchains::Linux::AddClangCXXStdlibIncludeArgs(), compose(), findMIPSMultilibs(), and operator==().

Multilib & Multilib::includeSuffix ( StringRef  S)

Set the include directory suffix.

Definition at line 79 of file Multilib.cpp.

References normalizePathSegment(), and S.

Check whether the default is selected.

Definition at line 88 of file Multilib.h.

Referenced by clang::driver::toolchains::Generic_GCC::GCCInstallationDetector::print().

Check whether any of the 'against' flags contradict the 'for' flags.

Definition at line 99 of file Multilib.cpp.

Referenced by clang::driver::MultilibSet::Either().

bool Multilib::operator== ( const Multilib Other) const

Definition at line 115 of file Multilib.cpp.

References gccSuffix(), includeSuffix(), and osSuffix().

const std::string& clang::driver::Multilib::osSuffix ( ) const [inline]

Get the detected os path suffix for the multi-arch target variant. Always starts with a '/', unless empty.

Definition at line 52 of file Multilib.h.

Referenced by compose(), clang::driver::toolchains::Linux::Linux(), and operator==().

Multilib & Multilib::osSuffix ( StringRef  S)

Set the os path suffix.

Definition at line 73 of file Multilib.cpp.

References normalizePathSegment(), and S.

void Multilib::print ( raw_ostream &  OS) const

print summary of the Multilib

Definition at line 85 of file Multilib.cpp.

Referenced by clang::driver::operator<<().


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