clang 19.0.0git
Macros | Functions
IndexSymbol.cpp File Reference
#include "clang/Index/IndexSymbol.h"
#include "clang/AST/Attr.h"
#include "clang/AST/DeclCXX.h"
#include "clang/AST/DeclObjC.h"
#include "clang/AST/DeclTemplate.h"
#include "clang/AST/PrettyPrinter.h"
#include "clang/Lex/MacroInfo.h"

Go to the source code of this file.

Macros

#define APPLY_FOR_ROLE(Role)
 
#define APPLY_FOR_PROPERTY(K)
 

Functions

static bool isUnitTestCase (const ObjCInterfaceDecl *D)
 
static bool isUnitTest (const ObjCMethodDecl *D)
 
static void checkForIBOutlets (const Decl *D, SymbolPropertySet &PropSet)
 

Macro Definition Documentation

◆ APPLY_FOR_PROPERTY

#define APPLY_FOR_PROPERTY (   K)
Value:
if (Props & (SymbolPropertySet)SymbolProperty::K) \
Fn(SymbolProperty::K)
uint16_t SymbolPropertySet
Definition: IndexSymbol.h:83

◆ APPLY_FOR_ROLE

#define APPLY_FOR_ROLE (   Role)
Value:
if (Roles & (unsigned)SymbolRole::Role) \
if (!Fn(SymbolRole::Role)) \
return false;

Function Documentation

◆ checkForIBOutlets()

static void checkForIBOutlets ( const Decl D,
SymbolPropertySet PropSet 
)
static

Definition at line 44 of file IndexSymbol.cpp.

References clang::Decl::hasAttr().

Referenced by clang::index::getSymbolInfo().

◆ isUnitTest()

static bool isUnitTest ( const ObjCMethodDecl D)
static
Returns
true if D is in a subclass of 'XCTestCase', returns void, has no parameters, and its name starts with 'test'.

Definition at line 34 of file IndexSymbol.cpp.

References clang::ObjCMethodDecl::getClassInterface(), clang::Selector::getNameForSlot(), clang::ObjCMethodDecl::getReturnType(), clang::ObjCMethodDecl::getSelector(), isUnitTestCase(), clang::Type::isVoidType(), and clang::ObjCMethodDecl::parameters().

Referenced by clang::index::getSymbolInfo().

◆ isUnitTestCase()

static bool isUnitTestCase ( const ObjCInterfaceDecl D)
static
Returns
true if D is a subclass of 'XCTestCase'.

Definition at line 21 of file IndexSymbol.cpp.

References clang::ObjCInterfaceDecl::getSuperClass().

Referenced by clang::index::getSymbolInfo(), and isUnitTest().