class MultilibSet

Declaration

class MultilibSet { /* full declaration omitted */ };

Declared at: clang/include/clang/Driver/Multilib.h:114

Member Variables

private clang::driver::MultilibSet::multilib_list Multilibs
private clang::driver::MultilibSet::IncludeDirsFunc IncludeCallback
private clang::driver::MultilibSet::IncludeDirsFunc FilePathsCallback

Method Overview

  • public clang::driver::MultilibSet & Either(const clang::driver::Multilib & M1, const clang::driver::Multilib & M2)
  • public clang::driver::MultilibSet & Either(const clang::driver::Multilib & M1, const clang::driver::Multilib & M2, const clang::driver::Multilib & M3)
  • public clang::driver::MultilibSet & Either(const clang::driver::Multilib & M1, const clang::driver::Multilib & M2, const clang::driver::Multilib & M3, const clang::driver::Multilib & M4)
  • public clang::driver::MultilibSet & Either(const clang::driver::Multilib & M1, const clang::driver::Multilib & M2, const clang::driver::Multilib & M3, const clang::driver::Multilib & M4, const clang::driver::Multilib & M5)
  • public clang::driver::MultilibSet & Either(ArrayRef<clang::driver::Multilib> Ms)
  • public clang::driver::MultilibSet & FilterOut(clang::driver::MultilibSet::FilterCallback F)
  • public clang::driver::MultilibSet & FilterOut(const char * Regex)
  • public clang::driver::MultilibSet & Maybe(const clang::driver::Multilib & M)
  • public MultilibSet()
  • public clang::driver::MultilibSet::const_iterator begin() const
  • public clang::driver::MultilibSet::iterator begin()
  • public void clear()
  • public void combineWith(const clang::driver::MultilibSet & MS)
  • public void dump() const
  • public clang::driver::MultilibSet::iterator end()
  • public clang::driver::MultilibSet::const_iterator end() const
  • public const clang::driver::MultilibSet::IncludeDirsFunc & filePathsCallback() const
  • private static clang::driver::MultilibSet::multilib_list filterCopy(clang::driver::MultilibSet::FilterCallback F, const clang::driver::MultilibSet::multilib_list & Ms)
  • private static void filterInPlace(clang::driver::MultilibSet::FilterCallback F, clang::driver::MultilibSet::multilib_list & Ms)
  • public const clang::driver::MultilibSet::IncludeDirsFunc & includeDirsCallback() const
  • public void print(llvm::raw_ostream & OS) const
  • public void push_back(const clang::driver::Multilib & M)
  • public bool select(const Multilib::flags_list & Flags, clang::driver::Multilib & M) const
  • public clang::driver::MultilibSet & setFilePathsCallback(clang::driver::MultilibSet::IncludeDirsFunc F)
  • public clang::driver::MultilibSet & setIncludeDirsCallback(clang::driver::MultilibSet::IncludeDirsFunc F)
  • public unsigned int size() const

Methods

clang::driver::MultilibSet& Either(
    const clang::driver::Multilib& M1,
    const clang::driver::Multilib& M2)

Description

Add a set of mutually incompatible Multilib segments

Declared at: clang/include/clang/Driver/Multilib.h:135

Parameters

const clang::driver::Multilib& M1
const clang::driver::Multilib& M2

clang::driver::MultilibSet& Either(
    const clang::driver::Multilib& M1,
    const clang::driver::Multilib& M2,
    const clang::driver::Multilib& M3)

Declared at: clang/include/clang/Driver/Multilib.h:136

Parameters

const clang::driver::Multilib& M1
const clang::driver::Multilib& M2
const clang::driver::Multilib& M3

clang::driver::MultilibSet& Either(
    const clang::driver::Multilib& M1,
    const clang::driver::Multilib& M2,
    const clang::driver::Multilib& M3,
    const clang::driver::Multilib& M4)

Declared at: clang/include/clang/Driver/Multilib.h:138

Parameters

const clang::driver::Multilib& M1
const clang::driver::Multilib& M2
const clang::driver::Multilib& M3
const clang::driver::Multilib& M4

clang::driver::MultilibSet& Either(
    const clang::driver::Multilib& M1,
    const clang::driver::Multilib& M2,
    const clang::driver::Multilib& M3,
    const clang::driver::Multilib& M4,
    const clang::driver::Multilib& M5)

Declared at: clang/include/clang/Driver/Multilib.h:140

Parameters

const clang::driver::Multilib& M1
const clang::driver::Multilib& M2
const clang::driver::Multilib& M3
const clang::driver::Multilib& M4
const clang::driver::Multilib& M5

clang::driver::MultilibSet& Either(
    ArrayRef<clang::driver::Multilib> Ms)

Declared at: clang/include/clang/Driver/Multilib.h:143

Parameters

ArrayRef<clang::driver::Multilib> Ms

clang::driver::MultilibSet& FilterOut(
    clang::driver::MultilibSet::FilterCallback F)

Description

Filter out some subset of the Multilibs using a user defined callback

Declared at: clang/include/clang/Driver/Multilib.h:146

Parameters

clang::driver::MultilibSet::FilterCallback F

clang::driver::MultilibSet& FilterOut(
    const char* Regex)

Description

Filter out those Multilibs whose gccSuffix matches the given expression

Declared at: clang/include/clang/Driver/Multilib.h:149

Parameters

const char* Regex

clang::driver::MultilibSet& Maybe(
    const clang::driver::Multilib& M)

Description

Add an optional Multilib segment

Declared at: clang/include/clang/Driver/Multilib.h:132

Parameters

const clang::driver::Multilib& M

MultilibSet()

Declared at: clang/include/clang/Driver/Multilib.h:129

clang::driver::MultilibSet::const_iterator begin()
    const

Declared at: clang/include/clang/Driver/Multilib.h:161

clang::driver::MultilibSet::iterator begin()

Declared at: clang/include/clang/Driver/Multilib.h:160

void clear()

Description

Remove all of the multilibs from the set

Declared at: clang/include/clang/Driver/Multilib.h:158

void combineWith(
    const clang::driver::MultilibSet& MS)

Description

Union this set of multilibs with another

Declared at: clang/include/clang/Driver/Multilib.h:155

Parameters

const clang::driver::MultilibSet& MS

void dump() const

Declared at: clang/include/clang/Driver/Multilib.h:171

clang::driver::MultilibSet::iterator end()

Declared at: clang/include/clang/Driver/Multilib.h:163

clang::driver::MultilibSet::const_iterator end()
    const

Declared at: clang/include/clang/Driver/Multilib.h:164

const clang::driver::MultilibSet::IncludeDirsFunc&
filePathsCallback() const

Declared at: clang/include/clang/Driver/Multilib.h:186

static clang::driver::MultilibSet::multilib_list
filterCopy(
    clang::driver::MultilibSet::FilterCallback F,
    const clang::driver::MultilibSet::
        multilib_list& Ms)

Description

Apply the filter to Multilibs and return the subset that remains

Declared at: clang/include/clang/Driver/Multilib.h:190

Parameters

clang::driver::MultilibSet::FilterCallback F
const clang::driver::MultilibSet::multilib_list& Ms

static void filterInPlace(
    clang::driver::MultilibSet::FilterCallback F,
    clang::driver::MultilibSet::multilib_list& Ms)

Description

Apply the filter to the multilib_list, removing those that don't match

Declared at: clang/include/clang/Driver/Multilib.h:193

Parameters

clang::driver::MultilibSet::FilterCallback F
clang::driver::MultilibSet::multilib_list& Ms

const clang::driver::MultilibSet::IncludeDirsFunc&
includeDirsCallback() const

Declared at: clang/include/clang/Driver/Multilib.h:179

void print(llvm::raw_ostream& OS) const

Declared at: clang/include/clang/Driver/Multilib.h:172

Parameters

llvm::raw_ostream& OS

void push_back(const clang::driver::Multilib& M)

Description

Add a completed Multilib to the set

Declared at: clang/include/clang/Driver/Multilib.h:152

Parameters

const clang::driver::Multilib& M

bool select(const Multilib::flags_list& Flags,
            clang::driver::Multilib& M) const

Description

Pick the best multilib in the set,

Declared at: clang/include/clang/Driver/Multilib.h:167

Parameters

const Multilib::flags_list& Flags
clang::driver::Multilib& M

Returns

false if none are compatible

clang::driver::MultilibSet& setFilePathsCallback(
    clang::driver::MultilibSet::IncludeDirsFunc F)

Declared at: clang/include/clang/Driver/Multilib.h:181

Parameters

clang::driver::MultilibSet::IncludeDirsFunc F

clang::driver::MultilibSet&
setIncludeDirsCallback(
    clang::driver::MultilibSet::IncludeDirsFunc F)

Declared at: clang/include/clang/Driver/Multilib.h:174

Parameters

clang::driver::MultilibSet::IncludeDirsFunc F

unsigned int size() const

Declared at: clang/include/clang/Driver/Multilib.h:169