clang API Documentation
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. | |
Selector | getUnarySelector (IdentifierInfo *ID) |
Selector | getNullarySelector (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. |
This table allows us to fully hide how we implement multi-keyword caching.
Definition at line 732 of file IdentifierTable.h.
SelectorTable::SelectorTable | ( | ) |
Definition at line 586 of file IdentifierTable.cpp.
Definition at line 590 of file IdentifierTable.cpp.
References getSelectorTableImpl().
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 539 of file IdentifierTable.cpp.
References clang::toUppercase().
Referenced by constructSetterSelector(), and hasDefaultSetterName().
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 547 of file IdentifierTable.cpp.
References constructSetterName(), clang::IdentifierTable::get(), clang::IdentifierInfo::getName(), and getUnarySelector().
Referenced by clang::Sema::ActOnClassPropertyRefExpr(), clang::Sema::HandleExprPropertyRefExpr(), and LookupMemberExpr().
Selector clang::SelectorTable::getNullarySelector | ( | IdentifierInfo * | ID | ) | [inline] |
Definition at line 749 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 560 of file IdentifierTable.cpp.
References getSelectorTableImpl(), and clang::MultiKeywordSelector::Profile().
Referenced by 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::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 555 of file IdentifierTable.cpp.
References getSelectorTableImpl().
Selector clang::SelectorTable::getUnarySelector | ( | IdentifierInfo * | ID | ) | [inline] |
Definition at line 746 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(), and clang::NSAPI::getNSStringSelector().