clang: clang::NSAPI Class Reference (original) (raw)

#include "[clang/AST/NSAPI.h](NSAPI%5F8h%5Fsource.html)"

Public Types
enum NSClassIdKindKind { ClassId_NSObject, ClassId_NSString, ClassId_NSArray, ClassId_NSMutableArray, ClassId_NSDictionary, ClassId_NSMutableDictionary, ClassId_NSNumber, ClassId_NSMutableSet, ClassId_NSMutableOrderedSet, ClassId_NSValue }
enum NSStringMethodKind { NSStr_stringWithString, NSStr_stringWithUTF8String, NSStr_stringWithCStringEncoding, NSStr_stringWithCString, NSStr_initWithString, NSStr_initWithUTF8String }
enum NSArrayMethodKind { NSArr_array, NSArr_arrayWithArray, NSArr_arrayWithObject, NSArr_arrayWithObjects, NSArr_arrayWithObjectsCount, NSArr_initWithArray, NSArr_initWithObjects, NSArr_objectAtIndex, NSMutableArr_replaceObjectAtIndex, NSMutableArr_addObject, NSMutableArr_insertObjectAtIndex, NSMutableArr_setObjectAtIndexedSubscript }
Enumerates the NSArray/NSMutableArray methods used to generate literals and to apply some checks. More...
enum NSDictionaryMethodKind { NSDict_dictionary, NSDict_dictionaryWithDictionary, NSDict_dictionaryWithObjectForKey, NSDict_dictionaryWithObjectsForKeys, NSDict_dictionaryWithObjectsForKeysCount, NSDict_dictionaryWithObjectsAndKeys, NSDict_initWithDictionary, NSDict_initWithObjectsAndKeys, NSDict_initWithObjectsForKeys, NSDict_objectForKey, NSMutableDict_setObjectForKey, NSMutableDict_setObjectForKeyedSubscript, NSMutableDict_setValueForKey }
Enumerates the NSDictionary/NSMutableDictionary methods used to generate literals and to apply some checks. More...
enum NSSetMethodKind { NSMutableSet_addObject, NSOrderedSet_insertObjectAtIndex, NSOrderedSet_setObjectAtIndex, NSOrderedSet_setObjectAtIndexedSubscript, NSOrderedSet_replaceObjectAtIndexWithObject }
Enumerates the NSMutableSet/NSOrderedSet methods used to apply some checks. More...
enum NSNumberLiteralMethodKind { NSNumberWithChar, NSNumberWithUnsignedChar, NSNumberWithShort, NSNumberWithUnsignedShort, NSNumberWithInt, NSNumberWithUnsignedInt, NSNumberWithLong, NSNumberWithUnsignedLong, NSNumberWithLongLong, NSNumberWithUnsignedLongLong, NSNumberWithFloat, NSNumberWithDouble, NSNumberWithBool, NSNumberWithInteger, NSNumberWithUnsignedInteger }
Enumerates the NSNumber methods used to generate literals. More...
Public Member Functions
NSAPI (ASTContext &Ctx)
ASTContext & getASTContext () const
IdentifierInfo * getNSClassId (NSClassIdKindKind K) const
Selector getNSStringSelector (NSStringMethodKind MK) const
The Objective-C NSString selectors.
bool isNSUTF8StringEncodingConstant (const Expr *E) const
Returns true if the expression.
bool isNSASCIIStringEncodingConstant (const Expr *E) const
Returns true if the expression.
Selector getNSArraySelector (NSArrayMethodKind MK) const
The Objective-C NSArray selectors.
std::optional< NSArrayMethodKind > getNSArrayMethodKind (Selector Sel)
Return NSArrayMethodKind if Sel is such a selector.
Selector getNSDictionarySelector (NSDictionaryMethodKind MK) const
The Objective-C NSDictionary selectors.
std::optional< NSDictionaryMethodKind > getNSDictionaryMethodKind (Selector Sel)
Return NSDictionaryMethodKind if Sel is such a selector.
Selector getNSSetSelector (NSSetMethodKind MK) const
The Objective-C NSSet selectors.
std::optional< NSSetMethodKind > getNSSetMethodKind (Selector Sel)
Return NSSetMethodKind if Sel is such a selector.
Selector getObjectForKeyedSubscriptSelector () const
Returns selector for "objectForKeyedSubscript:".
Selector getObjectAtIndexedSubscriptSelector () const
Returns selector for "objectAtIndexedSubscript:".
Selector getSetObjectForKeyedSubscriptSelector () const
Returns selector for "setObject:forKeyedSubscript".
Selector getSetObjectAtIndexedSubscriptSelector () const
Returns selector for "setObject:atIndexedSubscript".
Selector getIsEqualSelector () const
Returns selector for "isEqual:".
Selector getNewSelector () const
Selector getInitSelector () const
Selector getNSNumberLiteralSelector (NSNumberLiteralMethodKind MK, bool Instance) const
The Objective-C NSNumber selectors used to create NSNumber literals.
bool isNSNumberLiteralSelector (NSNumberLiteralMethodKind MK, Selector Sel) const
std::optional< NSNumberLiteralMethodKind > getNSNumberLiteralMethodKind (Selector Sel) const
Return NSNumberLiteralMethodKind if Sel is such a selector.
std::optional< NSNumberLiteralMethodKind > getNSNumberFactoryMethodKind (QualType T) const
Determine the appropriate NSNumber factory method kind for a literal of the given type.
bool isObjCBOOLType (QualType T) const
Returns true if.
bool isObjCNSIntegerType (QualType T) const
Returns true if.
bool isObjCNSUIntegerType (QualType T) const
Returns true if.
StringRef GetNSIntegralKind (QualType T) const
Returns one of NSIntegral typedef names if.
bool isMacroDefined (StringRef Id) const
Returns true if Id is currently defined as a macro.
bool isSubclassOfNSClass (ObjCInterfaceDecl *InterfaceDecl, NSClassIdKindKind NSClassKind) const
Returns true if InterfaceDecl is subclass of NSClassKind.
Static Public Attributes
static const unsigned NumClassIds = 10
static const unsigned NumNSStringMethods = 6
static const unsigned NumNSArrayMethods = 12
static const unsigned NumNSDictionaryMethods = 13
static const unsigned NumNSSetMethods = 5
static const unsigned NumNSNumberLiteralMethods = 15

Definition at line 23 of file NSAPI.h.

NSArrayMethodKind

Enumerates the NSArray/NSMutableArray methods used to generate literals and to apply some checks.

Enumerator
NSArr_array
NSArr_arrayWithArray
NSArr_arrayWithObject
NSArr_arrayWithObjects
NSArr_arrayWithObjectsCount
NSArr_initWithArray
NSArr_initWithObjects
NSArr_objectAtIndex
NSMutableArr_replaceObjectAtIndex
NSMutableArr_addObject
NSMutableArr_insertObjectAtIndex
NSMutableArr_setObjectAtIndexedSubscript

Definition at line 72 of file NSAPI.h.

NSClassIdKindKind

Enumerator
ClassId_NSObject
ClassId_NSString
ClassId_NSArray
ClassId_NSMutableArray
ClassId_NSDictionary
ClassId_NSMutableDictionary
ClassId_NSNumber
ClassId_NSMutableSet
ClassId_NSMutableOrderedSet
ClassId_NSValue

Definition at line 29 of file NSAPI.h.

NSDictionaryMethodKind

Enumerates the NSDictionary/NSMutableDictionary methods used to generate literals and to apply some checks.

Enumerator
NSDict_dictionary
NSDict_dictionaryWithDictionary
NSDict_dictionaryWithObjectForKey
NSDict_dictionaryWithObjectsForKeys
NSDict_dictionaryWithObjectsForKeysCount
NSDict_dictionaryWithObjectsAndKeys
NSDict_initWithDictionary
NSDict_initWithObjectsAndKeys
NSDict_initWithObjectsForKeys
NSDict_objectForKey
NSMutableDict_setObjectForKey
NSMutableDict_setObjectForKeyedSubscript
NSMutableDict_setValueForKey

Definition at line 96 of file NSAPI.h.

NSNumberLiteralMethodKind

Enumerates the NSNumber methods used to generate literals.

Enumerator
NSNumberWithChar
NSNumberWithUnsignedChar
NSNumberWithShort
NSNumberWithUnsignedShort
NSNumberWithInt
NSNumberWithUnsignedInt
NSNumberWithLong
NSNumberWithUnsignedLong
NSNumberWithLongLong
NSNumberWithUnsignedLongLong
NSNumberWithFloat
NSNumberWithDouble
NSNumberWithBool
NSNumberWithInteger
NSNumberWithUnsignedInteger

Definition at line 174 of file NSAPI.h.

NSSetMethodKind

Enumerates the NSMutableSet/NSOrderedSet methods used to apply some checks.

Enumerator
NSMutableSet_addObject
NSOrderedSet_insertObjectAtIndex
NSOrderedSet_setObjectAtIndex
NSOrderedSet_setObjectAtIndexedSubscript
NSOrderedSet_replaceObjectAtIndexWithObject

Definition at line 121 of file NSAPI.h.

NSStringMethodKind

Enumerator
NSStr_stringWithString
NSStr_stringWithUTF8String
NSStr_stringWithCStringEncoding
NSStr_stringWithCString
NSStr_initWithString
NSStr_initWithUTF8String

Definition at line 43 of file NSAPI.h.

getASTContext()

ASTContext & clang::NSAPI::getASTContext ( ) const inline

Definition at line 27 of file NSAPI.h.

Referenced by doRewriteToUTF8StringBoxedExpressionHelper(), getNSArrayObjects(), clang::edit::rewriteObjCRedundantCallWithLiteral(), rewriteToArrayLiteral(), rewriteToArraySubscriptGet(), rewriteToArraySubscriptSet(), rewriteToDictionaryLiteral(), rewriteToDictionarySubscriptGet(), rewriteToDictionarySubscriptSet(), rewriteToNSEnumDecl(), rewriteToNumberLiteral(), rewriteToNumericBoxedExpression(), clang::edit::rewriteToObjCLiteralSyntax(), rewriteToObjCProperty(), clang::edit::rewriteToObjCSubscriptSyntax(), and shouldNotRewriteImmediateMessageArgs().

getInitSelector()

Selector clang::NSAPI::getInitSelector ( ) const inline

getIsEqualSelector()

Selector clang::NSAPI::getIsEqualSelector ( ) const inline

Returns selector for "isEqual:".

Definition at line 161 of file NSAPI.h.

getNewSelector()

Selector clang::NSAPI::getNewSelector ( ) const inline

getNSArrayMethodKind()

getNSArraySelector()

The Objective-C NSArray selectors.

Definition at line 77 of file NSAPI.cpp.

References clang::IdentifierTable::get(), clang::SelectorTable::getNullarySelector(), clang::SelectorTable::getSelector(), clang::SelectorTable::getUnarySelector(), clang::ASTContext::Idents, NSArr_array, NSArr_arrayWithArray, NSArr_arrayWithObject, NSArr_arrayWithObjects, NSArr_arrayWithObjectsCount, NSArr_initWithArray, NSArr_initWithObjects, NSArr_objectAtIndex, NSMutableArr_addObject, NSMutableArr_insertObjectAtIndex, NSMutableArr_replaceObjectAtIndex, NSMutableArr_setObjectAtIndexedSubscript, and clang::ASTContext::Selectors.

Referenced by getNSArrayMethodKind(), getNSArrayObjects(), clang::edit::rewriteObjCRedundantCallWithLiteral(), rewriteToArrayLiteral(), and clang::edit::rewriteToObjCSubscriptSyntax().

getNSClassId()

getNSDictionaryMethodKind()

getNSDictionarySelector()

The Objective-C NSDictionary selectors.

Definition at line 148 of file NSAPI.cpp.

References clang::IdentifierTable::get(), clang::SelectorTable::getNullarySelector(), clang::SelectorTable::getSelector(), clang::SelectorTable::getUnarySelector(), clang::ASTContext::Idents, NSDict_dictionary, NSDict_dictionaryWithDictionary, NSDict_dictionaryWithObjectForKey, NSDict_dictionaryWithObjectsAndKeys, NSDict_dictionaryWithObjectsForKeys, NSDict_dictionaryWithObjectsForKeysCount, NSDict_initWithDictionary, NSDict_initWithObjectsAndKeys, NSDict_initWithObjectsForKeys, NSDict_objectForKey, NSMutableDict_setObjectForKey, NSMutableDict_setObjectForKeyedSubscript, NSMutableDict_setValueForKey, and clang::ASTContext::Selectors.

Referenced by getNSDictionaryMethodKind(), clang::edit::rewriteObjCRedundantCallWithLiteral(), rewriteToDictionaryLiteral(), clang::edit::rewriteToObjCSubscriptSyntax(), and shouldNotRewriteImmediateMessageArgs().

GetNSIntegralKind()

StringRef NSAPI::GetNSIntegralKind ( QualType T ) const

getNSNumberFactoryMethodKind()

Determine the appropriate NSNumber factory method kind for a literal of the given type.

Definition at line 349 of file NSAPI.cpp.

References clang::Type::getAs(), clang::BuiltinType::getKind(), isObjCBOOLType(), isObjCNSIntegerType(), isObjCNSUIntegerType(), NSNumberWithBool, NSNumberWithChar, NSNumberWithDouble, NSNumberWithFloat, NSNumberWithInt, NSNumberWithInteger, NSNumberWithLong, NSNumberWithLongLong, NSNumberWithShort, NSNumberWithUnsignedChar, NSNumberWithUnsignedInt, NSNumberWithUnsignedInteger, NSNumberWithUnsignedLong, NSNumberWithUnsignedLongLong, NSNumberWithUnsignedShort, and clang::T.

getNSNumberLiteralMethodKind()

getNSNumberLiteralSelector()

getNSSetMethodKind()

getNSSetSelector()

getNSStringSelector()

The Objective-C NSString selectors.

Definition at line 43 of file NSAPI.cpp.

References clang::IdentifierTable::get(), clang::SelectorTable::getSelector(), clang::SelectorTable::getUnarySelector(), clang::ASTContext::Idents, NSStr_initWithString, NSStr_initWithUTF8String, NSStr_stringWithCString, NSStr_stringWithCStringEncoding, NSStr_stringWithString, NSStr_stringWithUTF8String, and clang::ASTContext::Selectors.

Referenced by clang::edit::rewriteObjCRedundantCallWithLiteral(), and rewriteToStringBoxedExpression().

getObjectAtIndexedSubscriptSelector()

Selector clang::NSAPI::getObjectAtIndexedSubscriptSelector ( ) const inline

getObjectForKeyedSubscriptSelector()

Selector clang::NSAPI::getObjectForKeyedSubscriptSelector ( ) const inline

getSetObjectAtIndexedSubscriptSelector()

Selector clang::NSAPI::getSetObjectAtIndexedSubscriptSelector ( ) const inline

getSetObjectForKeyedSubscriptSelector()

Selector clang::NSAPI::getSetObjectForKeyedSubscriptSelector ( ) const inline

isMacroDefined()

bool NSAPI::isMacroDefined ( StringRef Id ) const

isNSASCIIStringEncodingConstant()

bool clang::NSAPI::isNSASCIIStringEncodingConstant ( const Expr * E) const inline

isNSNumberLiteralSelector()

isNSUTF8StringEncodingConstant()

bool clang::NSAPI::isNSUTF8StringEncodingConstant ( const Expr * E) const inline

isObjCBOOLType()

isObjCNSIntegerType()

isObjCNSUIntegerType()

isSubclassOfNSClass()

NumClassIds

const unsigned clang::NSAPI::NumClassIds = 10 static

NumNSArrayMethods

const unsigned clang::NSAPI::NumNSArrayMethods = 12 static

NumNSDictionaryMethods

const unsigned clang::NSAPI::NumNSDictionaryMethods = 13 static

NumNSNumberLiteralMethods

const unsigned clang::NSAPI::NumNSNumberLiteralMethods = 15 static

NumNSSetMethods

const unsigned clang::NSAPI::NumNSSetMethods = 5 static

NumNSStringMethods

const unsigned clang::NSAPI::NumNSStringMethods = 6 static

Definition at line 51 of file NSAPI.h.


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