Lines Matching full:cxcursor
18 #include "CXCursor.h"
70 using namespace clang::cxcursor;
168 static SourceRange getRawCursorExtent(CXCursor C);
169 static SourceRange getFullCursorExtent(CXCursor C, SourceManager &SrcMgr);
186 bool CursorVisitor::Visit(CXCursor Cursor, bool CheckedRegionOfInterest) {
484 bool CursorVisitor::VisitChildren(CXCursor Cursor) {
556 cast<IBOutletCollectionAttr>(cxcursor::getCursorAttr(Cursor));
558 return Visit(cxcursor::MakeCursorObjCClassRef(
571 getMacroInfo(cxcursor::getCursorMacroDefinition(Cursor), TU);
574 return Visit(cxcursor::MakeMacroExpansionCursor(MacroDef, BeginLoc, TU));
592 Optional<bool> CursorVisitor::shouldVisitCursor(CXCursor Cursor) {
627 CXCursor Cursor = MakeCXCursor(D, TU, RegionOfInterest);
1027 CXCursor Cursor = MakeCXCursor(*I, TU, RegionOfInterest);
1724 if (Visit(cxcursor::MakeCursorCXXBaseSpecifier(&I, TU)))
1748 NAME(const DATA *d, CXCursor parent) : \
1767 DeclVisit(const Decl *D, CXCursor parent, bool isFirst) :
1778 TypeLocVisit(TypeLoc tl, CXCursor parent) :
1794 LabelRefVisit(LabelDecl *LD, SourceLocation labelLoc, CXCursor parent)
1810 NestedNameSpecifierLocVisit(NestedNameSpecifierLoc Qualifier, CXCursor parent)
1829 DeclarationNameInfoVisit(const Stmt *S, CXCursor parent)
1852 MemberRefVisit(const FieldDecl *D, SourceLocation L, CXCursor parent)
1868 CXCursor Parent;
1870 EnqueueVisitor(VisitorWorkList &wl, CXCursor parent)
2649 bool CursorVisitor::IsInRegionOfInterest(CXCursor C) {
2732 CXCursor Cursor = MakeCXCursor(S, StmtParent, TU, RegionOfInterest);
3453 CXCursor clang_getTranslationUnitCursor(CXTranslationUnit TU) {
3541 // CXCursor Operations.
3634 unsigned clang_visitChildren(CXCursor parent,
3647 (^CXCursorVisitorBlock)(CXCursor cursor, CXCursor parent);
3649 static enum CXChildVisitResult visitWithBlock(CXCursor cursor, CXCursor parent,
3662 enum CXChildVisitResult(*invoke)(struct _CXChildVisitResult*, CXCursor,
3663 CXCursor);
3666 static enum CXChildVisitResult visitWithBlock(CXCursor cursor, CXCursor parent,
3674 unsigned clang_visitChildrenWithBlock(CXCursor parent,
3716 CXString clang_getCursorSpelling(CXCursor C) {
3848 const AnnotateAttr *AA = cast<AnnotateAttr>(cxcursor::getCursorAttr(C));
3853 const AsmLabelAttr *AA = cast<AsmLabelAttr>(cxcursor::getCursorAttr(C));
3862 const VisibilityAttr *AA = cast<VisibilityAttr>(cxcursor::getCursorAttr(C));
3877 CXSourceRange clang_Cursor_getSpellingNameRange(CXCursor C,
3971 CXString clang_Cursor_getMangling(CXCursor C) {
4005 CXStringSet *clang_Cursor_getCXXManglings(CXCursor C) {
4053 CXString clang_getCursorDisplayName(CXCursor C) {
4531 CXCursor &BestCursor;
4534 SourceLocation tokenBegin, CXCursor &outputCursor)
4541 static enum CXChildVisitResult GetCursorVisitor(CXCursor cursor,
4542 CXCursor parent,
4545 CXCursor *BestCursor = &Data->BestCursor;
4641 CXCursor clang_getCursor(CXTranslationUnit TU, CXSourceLocation Loc) {
4651 CXCursor Result = cxcursor::getCursor(TU, SLoc);
4681 CXCursor
4703 CXCursor clang_getNullCursor(void) {
4707 unsigned clang_equalCursors(CXCursor X, CXCursor Y) {
4723 unsigned clang_hashCursor(CXCursor C) {
4777 CXCursorKind clang_getCursorKind(CXCursor C) {
4781 CXSourceLocation clang_getCursorLocation(CXCursor C) {
4865 SourceLocation L = cxcursor::getCursorPreprocessingDirective(C).getBegin();
4871 = cxcursor::getCursorMacroExpansion(C).getSourceRange().getBegin();
4876 SourceLocation L = cxcursor::getCursorMacroDefinition(C)->getLocation();
4882 = cxcursor::getCursorInclusionDirective(C)->getSourceRange().getBegin();
4888 = cxcursor::getCursorAttr(C)->getLocation();
4903 // stored in the CXCursor to determine if the VarDecl is in a DeclGroup,
4906 if (!cxcursor::isFirstInDeclGroup(C))
4919 CXCursor cxcursor::getCursor(CXTranslationUnit TU, SourceLocation SLoc) {
4934 CXCursor Result = MakeCXCursorInvalid(CXCursor_NoDeclFound);
4947 static SourceRange getRawCursorExtent(CXCursor C) {
4999 return cxcursor::getCursorPreprocessingDirective(C);
5003 SourceRange Range = cxcursor::getCursorMacroExpansion(C).getSourceRange();
5009 SourceRange Range = cxcursor::getCursorMacroDefinition(C)->getSourceRange();
5015 SourceRange Range = cxcursor::getCursorInclusionDirective(C)->getSourceRange();
5028 const Decl *D = cxcursor::getCursorDecl(C);
5036 // stored in the CXCursor to determine if the VarDecl is in a DeclGroup,
5039 if (!cxcursor::isFirstInDeclGroup(C))
5049 static SourceRange getFullCursorExtent(CXCursor C, SourceManager &SrcMgr) {
5051 const Decl *D = cxcursor::getCursorDecl(C);
5075 // stored in the CXCursor to determine if the VarDecl is in a DeclGroup,
5078 if (!cxcursor::isFirstInDeclGroup(C))
5090 CXSourceRange clang_getCursorExtent(CXCursor C) {
5098 CXCursor clang_getCursorReferenced(CXCursor C) {
5121 CXCursor declCursor = MakeCXCursor(D, tu);
5185 const CXXBaseSpecifier *B = cxcursor::getCursorCXXBaseSpecifier(C);
5192 // don't want to make CXCursor larger.
5210 CXCursor clang_getCursorDefinition(CXCursor C) {
5418 unsigned clang_isCursorDefinition(CXCursor C) {
5425 CXCursor clang_getCanonicalCursor(CXCursor C) {
5444 int clang_Cursor_getObjCSelectorIndex(CXCursor cursor) {
5445 return cxcursor::getSelectorIdentifierIndexAndLoc(cursor).first;
5448 unsigned clang_getNumOverloadedDecls(CXCursor C) {
5467 CXCursor clang_getOverloadedDecl(CXCursor cursor, unsigned index) {
5494 void clang_getDefinitionSpellingAndExtent(CXCursor C,
5501 assert(getCursorDecl(C) && "CXCursor has null decl");
5515 CXSourceRange clang_getCursorReferenceNameRange(CXCursor C, unsigned NameFlags,
5781 static enum CXChildVisitResult AnnotateTokensVisitor(CXCursor cursor,
5782 CXCursor parent,
5784 static bool AnnotateTokensPostChildrenVisitor(CXCursor cursor,
5790 CXCursor *Cursors;
5799 CXCursor Cursor;
5827 void annotateAndAdvanceTokens(CXCursor, RangeComparisonResult, SourceRange);
5828 bool annotateAndAdvanceFunctionMacroTokens(CXCursor, RangeComparisonResult,
5832 AnnotateTokensWorker(CXToken *tokens, CXCursor *cursors, unsigned numTokens,
5846 void VisitChildren(CXCursor C) { AnnotateVis.VisitChildren(C); }
5847 enum CXChildVisitResult Visit(CXCursor cursor, CXCursor parent);
5848 bool postVisitChildren(CXCursor cursor);
5869 static inline void updateCursorAnnotation(CXCursor &Cursor,
5870 const CXCursor &updateC) {
5882 void AnnotateTokensWorker::annotateAndAdvanceTokens(CXCursor updateC,
5904 CXCursor updateC,
5941 AnnotateTokensWorker::Visit(CXCursor cursor, CXCursor parent) {
6056 const CXCursor updateC =
6098 bool AnnotateTokensWorker::postVisitChildren(CXCursor cursor) {
6131 static enum CXChildVisitResult AnnotateTokensVisitor(CXCursor cursor,
6132 CXCursor parent,
6137 static bool AnnotateTokensPostChildrenVisitor(CXCursor cursor,
6159 CXChildVisitResult visit(CXCursor cursor, CXCursor parent) {
6214 MarkMacroArgTokensVisitorDelegate(CXCursor cursor, CXCursor parent,
6237 CXCursor *Cursors,
6325 CXCursor Cursor =
6341 CXCursor *Cursors) {
6450 CXCursor *Cursors) {
6468 CXCursor C = clang_getNullCursor();
6494 CXLinkageKind clang_getCursorLinkage(CXCursor cursor) {
6498 const Decl *D = cxcursor::getCursorDecl(cursor);
6517 CXVisibilityKind clang_getCursorVisibility(CXCursor cursor) {
6521 const Decl *D = cxcursor::getCursorDecl(cursor);
6611 enum CXAvailabilityKind clang_getCursorAvailability(CXCursor cursor) {
6613 if (const Decl *D = cxcursor::getCursorDecl(cursor))
6700 int clang_getCursorPlatformAvailability(CXCursor cursor,
6719 const Decl *D = cxcursor::getCursorDecl(cursor);
6736 CXLanguageKind clang_getCursorLanguage(CXCursor cursor) {
6738 return getDeclLanguage(cxcursor::getCursorDecl(cursor));
6762 enum CX_StorageClass clang_Cursor_getStorageClass(CXCursor C) {
6793 CXCursor clang_getCursorSemanticParent(CXCursor cursor) {
6813 CXCursor clang_getCursorLexicalParent(CXCursor cursor) {
6830 CXFile clang_getIncludedFile(CXCursor cursor) {
6838 unsigned clang_Cursor_getObjCPropertyAttributes(CXCursor C, unsigned reserved) {
6867 unsigned clang_Cursor_getObjCDeclQualifiers(CXCursor C) {
6891 unsigned clang_Cursor_isObjCOptional(CXCursor C) {
6904 unsigned clang_Cursor_isVariadic(CXCursor C) {
6917 CXSourceRange clang_Cursor_getCommentRange(CXCursor C) {
6930 CXString clang_Cursor_getRawCommentText(CXCursor C) {
6945 CXString clang_Cursor_getBriefCommentText(CXCursor C) {
6964 CXModule clang_Cursor_getModule(CXCursor C) {
7064 unsigned clang_CXXField_isMutable(CXCursor C) {
7068 if (const auto D = cxcursor::getCursorDecl(C))
7074 unsigned clang_CXXMethod_isPureVirtual(CXCursor C) {
7078 const Decl *D = cxcursor::getCursorDecl(C);
7084 unsigned clang_CXXMethod_isConst(CXCursor C) {
7088 const Decl *D = cxcursor::getCursorDecl(C);
7094 unsigned clang_CXXMethod_isStatic(CXCursor C) {
7098 const Decl *D = cxcursor::getCursorDecl(C);
7104 unsigned clang_CXXMethod_isVirtual(CXCursor C) {
7108 const Decl *D = cxcursor::getCursorDecl(C);
7120 CXType clang_getIBOutletCollectionType(CXCursor C) {
7122 return cxtype::MakeCXType(QualType(), cxcursor::getCursorTU(C));
7125 cast<IBOutletCollectionAttr>(cxcursor::getCursorAttr(C));
7127 return cxtype::MakeCXType(A->getInterface(), cxcursor::getCursorTU(C));
7530 Logger &cxindex::Logger::operator<<(CXCursor cursor) {