diff options
Diffstat (limited to 'tools/c-index-test')
-rw-r--r-- | tools/c-index-test/c-index-test.c | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/tools/c-index-test/c-index-test.c b/tools/c-index-test/c-index-test.c index 2d2be158d0..8df2fc261d 100644 --- a/tools/c-index-test/c-index-test.c +++ b/tools/c-index-test/c-index-test.c @@ -3,25 +3,27 @@ #include "clang-c/Index.h" #include <stdio.h> +static void PrintCursor(CXCursor Cursor) { + printf("%s => %s", clang_getCursorKindSpelling(Cursor.kind), + clang_getCursorSpelling(Cursor)); + printf(" (%s,%d:%d)\n", clang_getCursorSource(Cursor), + clang_getCursorLine(Cursor), + clang_getCursorColumn(Cursor)); +} + static void DeclVisitor(CXDecl Dcl, CXCursor Cursor, CXClientData Filter) { - if (!Filter || (Cursor.kind == *(enum CXCursorKind *)Filter)) { - printf("%s => %s", clang_getCursorKindSpelling(Cursor.kind), - clang_getCursorSpelling(Cursor)); - printf(" (%s,%d:%d)\n", clang_getCursorSource(Cursor), - clang_getCursorLine(Cursor), - clang_getCursorColumn(Cursor)); - } + printf("%s: ", clang_getDeclSpelling(Dcl)); + if (!Filter || (Cursor.kind == *(enum CXCursorKind *)Filter)) + PrintCursor(Cursor); } + static void TranslationUnitVisitor(CXTranslationUnit Unit, CXCursor Cursor, CXClientData Filter) { + printf("%s: ", clang_getTranslationUnitSpelling(Unit)); if (!Filter || (Cursor.kind == *(enum CXCursorKind *)Filter)) { - printf("%s => %s", clang_getCursorKindSpelling(Cursor.kind), - clang_getCursorSpelling(Cursor)); - printf(" (%s,%d:%d)\n", clang_getCursorSource(Cursor), - clang_getCursorLine(Cursor), - clang_getCursorColumn(Cursor)); + PrintCursor(Cursor); clang_loadDeclaration(Cursor.decl, DeclVisitor, 0); } |