clang
3.9.0
|
This table allows us to fully hide how we implement multi-keyword caching. More...
#include <IdentifierTable.h>
Public Member Functions | |
SelectorTable () | |
~SelectorTable () | |
Selector | getSelector (unsigned NumArgs, IdentifierInfo **IIV) |
Can create any sort of selector. More... | |
Selector | getUnarySelector (IdentifierInfo *ID) |
Selector | getNullarySelector (IdentifierInfo *ID) |
size_t | getTotalMemory () const |
Return the total amount of memory allocated for managing selectors. More... | |
Static Public Member Functions | |
static SmallString< 64 > | constructSetterName (StringRef Name) |
Return the default setter name for the given identifier. More... | |
static Selector | constructSetterSelector (IdentifierTable &Idents, SelectorTable &SelTable, const IdentifierInfo *Name) |
Return the default setter selector for the given identifier. More... | |
This table allows us to fully hide how we implement multi-keyword caching.
Definition at line 755 of file IdentifierTable.h.
SelectorTable::SelectorTable | ( | ) |
Definition at line 629 of file IdentifierTable.cpp.
SelectorTable::~SelectorTable | ( | ) |
Definition at line 633 of file IdentifierTable.cpp.
References getSelectorTableImpl().
|
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 582 of file IdentifierTable.cpp.
References clang::Name, and clang::toUppercase().
Referenced by constructSetterSelector(), and hasDefaultSetterName().
|
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 590 of file IdentifierTable.cpp.
References constructSetterName(), clang::IdentifierTable::get(), clang::IdentifierInfo::getName(), and getUnarySelector().
Referenced by clang::Sema::ActOnClassPropertyRefExpr(), clang::Sema::HandleExprPropertyRefExpr(), and LookupMemberExpr().
|
inline |
Definition at line 772 of file IdentifierTable.h.
Referenced by clang::Sema::ActOnClassPropertyRefExpr(), clang::Sema::checkObjCBridgeRelatedComponents(), cleanupDeallocOrFinalize(), clang::CodeGen::CodeGenFunction::EmitBlockCopyAndAutorelease(), GCRewriteFinalize(), clang::NSAPI::getNSArraySelector(), clang::NSAPI::getNSDictionarySelector(), clang::Sema::HandleExprPropertyRefExpr(), and LookupMemberExpr().
Selector SelectorTable::getSelector | ( | unsigned | NumArgs, |
IdentifierInfo ** | IIV | ||
) |
Can create any sort of selector.
NumArgs
indicates whether this is a no argument selector "foo", a single argument selector "foo:" or multi-argument "foo:bar:".
Definition at line 603 of file IdentifierTable.cpp.
References getSelectorTableImpl(), ID, and clang::MultiKeywordSelector::Profile().
Referenced by clang::Sema::BuildObjCBoxedExpr(), CheckKeyForObjCARCConversion(), clang::Sema::CheckObjCForCollectionOperand(), CheckProtocolMethodDefs(), clang::CodeGen::CodeGenFunction::EmitObjCForCollectionStmt(), clang::CodeGen::CodeGenFunction::EmitObjCMRRAutoreleasePoolPop(), clang::CodeGen::CodeGenFunction::EmitObjCMRRAutoreleasePoolPush(), clang::ento::getKeywordSelectorImpl(), clang::NSAPI::getNSArraySelector(), clang::NSAPI::getNSDictionarySelector(), clang::NSAPI::getNSSetSelector(), clang::NSAPI::getNSStringSelector(), clang::GetNullarySelector(), clang::GetUnarySelector(), clang::ASTImporter::Import(), and clang::ObjCNoReturn::ObjCNoReturn().
size_t SelectorTable::getTotalMemory | ( | ) | const |
Return the total amount of memory allocated for managing selectors.
Definition at line 598 of file IdentifierTable.cpp.
References getSelectorTableImpl().
|
inline |
Definition at line 769 of file IdentifierTable.h.
Referenced by clang::Sema::ActOnInstanceMessage(), clang::Sema::BuildObjCBoxedExpr(), clang::Sema::checkObjCBridgeRelatedComponents(), constructSetterSelector(), clang::NSAPI::getNSArraySelector(), clang::NSAPI::getNSDictionarySelector(), clang::NSAPI::getNSNumberLiteralSelector(), clang::NSAPI::getNSSetSelector(), and clang::NSAPI::getNSStringSelector().