clang 22.0.0git
clang::SelectorTable Class Reference

This table allows us to fully hide how we implement multi-keyword caching. More...

#include "clang/Basic/IdentifierTable.h"

Public Member Functions

 SelectorTable ()
 SelectorTable (const SelectorTable &)=delete
SelectorTableoperator= (const SelectorTable &)=delete
 ~SelectorTable ()
Selector getSelector (unsigned NumArgs, const IdentifierInfo **IIV)
 Can create any sort of selector.
Selector getUnarySelector (const IdentifierInfo *ID)
Selector getNullarySelector (const IdentifierInfo *ID)
size_t getTotalMemory () const
 Return the total amount of memory allocated for managing selectors.

Static Public Member Functions

static SmallString< 64 > constructSetterName (StringRef Name)
 Return the default setter name for the given identifier.
static Selector constructSetterSelector (IdentifierTable &Idents, SelectorTable &SelTable, const IdentifierInfo *Name)
 Return the default setter selector for the given identifier.
static std::string getPropertyNameFromSetterSelector (Selector Sel)
 Return the property name for the given setter selector.

Detailed Description

This table allows us to fully hide how we implement multi-keyword caching.

Definition at line 1130 of file IdentifierTable.h.

Constructor & Destructor Documentation

β—† SelectorTable() [1/2]

SelectorTable::SelectorTable ( )

Definition at line 812 of file IdentifierTable.cpp.

Referenced by constructSetterSelector(), operator=(), and SelectorTable().

β—† SelectorTable() [2/2]

clang::SelectorTable::SelectorTable ( const SelectorTable & )
delete

References SelectorTable().

β—† ~SelectorTable()

SelectorTable::~SelectorTable ( )

Definition at line 816 of file IdentifierTable.cpp.

References getSelectorTableImpl().

Member Function Documentation

β—† constructSetterName()

SmallString< 64 > SelectorTable::constructSetterName ( StringRef Name)
static

Return the default setter name for the given identifier.

This is "set" + Name where the initial character of Name has been capitalized.

Definition at line 758 of file IdentifierTable.cpp.

References clang::toUppercase().

Referenced by constructSetterSelector(), and hasDefaultSetterName().

β—† constructSetterSelector()

Selector SelectorTable::constructSetterSelector ( IdentifierTable & Idents,
SelectorTable & SelTable,
const IdentifierInfo * Name )
static

Return the default setter selector for the given identifier.

This is "set" + Name where the initial character of Name has been capitalized.

Definition at line 766 of file IdentifierTable.cpp.

References constructSetterName(), clang::IdentifierTable::get(), clang::IdentifierInfo::getName(), getUnarySelector(), and SelectorTable().

Referenced by clang::SemaObjC::ActOnClassPropertyRefExpr(), clang::SemaObjC::HandleExprPropertyRefExpr(), and LookupMemberExpr().

β—† getNullarySelector()

β—† getPropertyNameFromSetterSelector()

std::string SelectorTable::getPropertyNameFromSetterSelector ( Selector Sel)
static

Return the property name for the given setter selector.

Definition at line 774 of file IdentifierTable.cpp.

References clang::Selector::getNameForSlot(), and clang::toLowercase().

β—† getSelector()

β—† getTotalMemory()

size_t SelectorTable::getTotalMemory ( ) const

Return the total amount of memory allocated for managing selectors.

Definition at line 780 of file IdentifierTable.cpp.

References getSelectorTableImpl().

β—† getUnarySelector()

Selector clang::SelectorTable::getUnarySelector ( const IdentifierInfo * ID)
inline

β—† operator=()

SelectorTable & clang::SelectorTable::operator= ( const SelectorTable & )
delete

References getSelector(), and SelectorTable().


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