summaryrefslogtreecommitdiffstats
path: root/clang/tools/c-index-test/c-index-test.c
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-07-26 15:24:30 +0000
committerDouglas Gregor <dgregor@apple.com>2011-07-26 15:24:30 +0000
commitea777403f999cba29ac23eee92fecbf996528a17 (patch)
tree67a789ae9ca0c783057d625e0b1a2bee5d15dce7 /clang/tools/c-index-test/c-index-test.c
parentb84dc6bca84274dc03157bbddeb6b80450cc9a4c (diff)
downloadbcm5719-llvm-ea777403f999cba29ac23eee92fecbf996528a17.tar.gz
bcm5719-llvm-ea777403f999cba29ac23eee92fecbf996528a17.zip
Add new libclang API, clang_codeCompleteGetObjCSelector(), which
provides the partial Objective-C selector used in a code completion. From Connor Wakamo! llvm-svn: 136084
Diffstat (limited to 'clang/tools/c-index-test/c-index-test.c')
-rw-r--r--clang/tools/c-index-test/c-index-test.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/clang/tools/c-index-test/c-index-test.c b/clang/tools/c-index-test/c-index-test.c
index 6d7bf5bb15a..b737a38229e 100644
--- a/clang/tools/c-index-test/c-index-test.c
+++ b/clang/tools/c-index-test/c-index-test.c
@@ -1201,6 +1201,8 @@ int perform_code_completion(int argc, const char **argv, int timing_only) {
unsigned i, n = results->NumResults, containerIsIncomplete = 0;
unsigned long long contexts;
enum CXCursorKind containerKind;
+ CXString objCSelector;
+ const char *selectorString;
if (!timing_only) {
/* Sort the code-completion results based on the typed text. */
clang_sortCodeCompletionResults(results->Results, results->NumResults);
@@ -1218,7 +1220,8 @@ int perform_code_completion(int argc, const char **argv, int timing_only) {
contexts = clang_codeCompleteGetContexts(results);
print_completion_contexts(contexts, stdout);
- containerKind = clang_codeCompleteGetContainerKind(results, &containerIsIncomplete);
+ containerKind = clang_codeCompleteGetContainerKind(results,
+ &containerIsIncomplete);
if (containerKind != CXCursor_InvalidCode) {
/* We have found a container */
@@ -1239,6 +1242,13 @@ int perform_code_completion(int argc, const char **argv, int timing_only) {
clang_disposeString(containerUSR);
}
+ objCSelector = clang_codeCompleteGetObjCSelector(results);
+ selectorString = clang_getCString(objCSelector);
+ if (selectorString && strlen(selectorString) > 0) {
+ printf("Objective-C selector: %s\n", selectorString);
+ }
+ clang_disposeString(objCSelector);
+
clang_disposeCodeCompleteResults(results);
}
clang_disposeTranslationUnit(TU);
OpenPOWER on IntegriCloud