clang 22.0.0git
clang::driver::MultilibSetBuilder Class Reference

This class can be used to create a MultilibSet, and contains helper functions to add combinations of multilibs before creating a MultilibSet instance with makeMultilibSet(). More...

#include "clang/Driver/MultilibBuilder.h"

Public Types

using multilib_list = std::vector<MultilibBuilder>

Public Member Functions

 MultilibSetBuilder ()=default
MultilibSetBuilderMaybe (const MultilibBuilder &M)
 Add an optional Multilib segment.
MultilibSetBuilderEither (const MultilibBuilder &M1, const MultilibBuilder &M2)
 Add a set of mutually incompatible Multilib segments.
MultilibSetBuilderEither (const MultilibBuilder &M1, const MultilibBuilder &M2, const MultilibBuilder &M3)
MultilibSetBuilderEither (const MultilibBuilder &M1, const MultilibBuilder &M2, const MultilibBuilder &M3, const MultilibBuilder &M4)
MultilibSetBuilderEither (const MultilibBuilder &M1, const MultilibBuilder &M2, const MultilibBuilder &M3, const MultilibBuilder &M4, const MultilibBuilder &M5)
MultilibSetBuilderEither (ArrayRef< MultilibBuilder > Ms)
MultilibSetBuilderFilterOut (const char *Regex)
 Filter out those Multilibs whose gccSuffix matches the given expression.
MultilibSet makeMultilibSet () const

Detailed Description

This class can be used to create a MultilibSet, and contains helper functions to add combinations of multilibs before creating a MultilibSet instance with makeMultilibSet().

Definition at line 96 of file MultilibBuilder.h.

Member Typedef Documentation

◆ multilib_list

Constructor & Destructor Documentation

◆ MultilibSetBuilder()

clang::driver::MultilibSetBuilder::MultilibSetBuilder ( )
default

Member Function Documentation

◆ Either() [1/5]

MultilibSetBuilder & MultilibSetBuilder::Either ( ArrayRef< MultilibBuilder > Ms)

Definition at line 152 of file MultilibBuilder.cpp.

References compose(), clang::driver::MultilibBuilder::isValid(), and New.

◆ Either() [2/5]

◆ Either() [3/5]

MultilibSetBuilder & MultilibSetBuilder::Either ( const MultilibBuilder & M1,
const MultilibBuilder & M2,
const MultilibBuilder & M3 )

Definition at line 110 of file MultilibBuilder.cpp.

References Either(), and MultilibSetBuilder().

◆ Either() [4/5]

MultilibSetBuilder & MultilibSetBuilder::Either ( const MultilibBuilder & M1,
const MultilibBuilder & M2,
const MultilibBuilder & M3,
const MultilibBuilder & M4 )

Definition at line 116 of file MultilibBuilder.cpp.

References Either(), and MultilibSetBuilder().

◆ Either() [5/5]

MultilibSetBuilder & MultilibSetBuilder::Either ( const MultilibBuilder & M1,
const MultilibBuilder & M2,
const MultilibBuilder & M3,
const MultilibBuilder & M4,
const MultilibBuilder & M5 )

Definition at line 123 of file MultilibBuilder.cpp.

References Either(), and MultilibSetBuilder().

◆ FilterOut()

MultilibSetBuilder & MultilibSetBuilder::FilterOut ( const char * Regex)

Filter out those Multilibs whose gccSuffix matches the given expression.

Definition at line 172 of file MultilibBuilder.cpp.

References clang::Error, clang::driver::MultilibBuilder::gccSuffix(), and MultilibSetBuilder().

Referenced by findMipsCsMultilibs(), findMipsMtiMultilibs(), and findRISCVMultilibs().

◆ makeMultilibSet()

◆ Maybe()


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