LLVM 19.0.0git
Classes | Public Types | Public Member Functions | List of all members
llvm::MachO::SymbolSet Class Reference

#include "llvm/TextAPI/SymbolSet.h"

Classes

struct  const_symbol_iterator
 

Public Types

using const_symbol_range = iterator_range< const_symbol_iterator >
 
using const_filtered_symbol_iterator = filter_iterator< const_symbol_iterator, std::function< bool(const Symbol *)> >
 
using const_filtered_symbol_range = iterator_range< const_filtered_symbol_iterator >
 

Public Member Functions

 SymbolSet ()=default
 
SymboladdGlobal (EncodeKind Kind, StringRef Name, SymbolFlags Flags, const Target &Targ)
 
size_t size () const
 
template<typename RangeT , typename ElT = std::remove_reference_t< decltype(*std::begin(std::declval<RangeT>()))>>
SymboladdGlobal (EncodeKind Kind, StringRef Name, SymbolFlags Flags, RangeT &&Targets)
 
const SymbolfindSymbol (EncodeKind Kind, StringRef Name, ObjCIFSymbolKind ObjCIF=ObjCIFSymbolKind::None) const
 
const_symbol_range symbols () const
 
const_filtered_symbol_range exports () const
 
const_filtered_symbol_range reexports () const
 
const_filtered_symbol_range undefineds () const
 
bool operator== (const SymbolSet &O) const
 
bool operator!= (const SymbolSet &O) const
 
void * allocate (size_t Size, unsigned Align=8)
 

Detailed Description

Definition at line 76 of file SymbolSet.h.

Member Typedef Documentation

◆ const_filtered_symbol_iterator

Definition at line 131 of file SymbolSet.h.

◆ const_filtered_symbol_range

Definition at line 134 of file SymbolSet.h.

◆ const_symbol_range

Definition at line 129 of file SymbolSet.h.

Constructor & Destructor Documentation

◆ SymbolSet()

llvm::MachO::SymbolSet::SymbolSet ( )
default

Member Function Documentation

◆ addGlobal() [1/2]

Symbol * SymbolSet::addGlobal ( EncodeKind  Kind,
StringRef  Name,
SymbolFlags  Flags,
const Target Targ 
)

◆ addGlobal() [2/2]

template<typename RangeT , typename ElT = std::remove_reference_t< decltype(*std::begin(std::declval<RangeT>()))>>
Symbol * llvm::MachO::SymbolSet::addGlobal ( EncodeKind  Kind,
StringRef  Name,
SymbolFlags  Flags,
RangeT &&  Targets 
)
inline

◆ allocate()

void * llvm::MachO::SymbolSet::allocate ( size_t  Size,
unsigned  Align = 8 
)
inline

Definition at line 176 of file SymbolSet.h.

References Allocator, and Size.

◆ exports()

const_filtered_symbol_range llvm::MachO::SymbolSet::exports ( ) const
inline

◆ findSymbol()

const Symbol * SymbolSet::findSymbol ( EncodeKind  Kind,
StringRef  Name,
ObjCIFSymbolKind  ObjCIF = ObjCIFSymbolKind::None 
) const

◆ operator!=()

bool llvm::MachO::SymbolSet::operator!= ( const SymbolSet O) const
inline

Definition at line 174 of file SymbolSet.h.

◆ operator==()

bool llvm::MachO::SymbolSet::operator== ( const SymbolSet O) const

◆ reexports()

const_filtered_symbol_range llvm::MachO::SymbolSet::reexports ( ) const
inline

Definition at line 153 of file SymbolSet.h.

References llvm::MachO::Symbol::isReexported(), and llvm::make_filter_range().

◆ size()

size_t llvm::MachO::SymbolSet::size ( ) const
inline

Definition at line 96 of file SymbolSet.h.

◆ symbols()

const_symbol_range llvm::MachO::SymbolSet::symbols ( ) const
inline

Definition at line 138 of file SymbolSet.h.

◆ undefineds()

const_filtered_symbol_range llvm::MachO::SymbolSet::undefineds ( ) const
inline

Definition at line 163 of file SymbolSet.h.

References llvm::MachO::Symbol::isUndefined(), and llvm::make_filter_range().


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