clang API Documentation
The context in which code completion occurred, so that the code-completion consumer can process the results accordingly. More...
#include <CodeCompleteConsumer.h>
Public Types | |
| enum | Kind { CCC_Other, CCC_OtherWithMacros, CCC_TopLevel, CCC_ObjCInterface, CCC_ObjCImplementation, CCC_ObjCIvarList, CCC_ClassStructUnion, CCC_Statement, CCC_Expression, CCC_ObjCMessageReceiver, CCC_DotMemberAccess, CCC_ArrowMemberAccess, CCC_ObjCPropertyAccess, CCC_EnumTag, CCC_UnionTag, CCC_ClassOrStructTag, CCC_ObjCProtocolName, CCC_Namespace, CCC_Type, CCC_Name, CCC_PotentiallyQualifiedName, CCC_MacroName, CCC_MacroNameUse, CCC_PreprocessorExpression, CCC_PreprocessorDirective, CCC_NaturalLanguage, CCC_SelectorName, CCC_TypeQualifiers, CCC_ParenthesizedExpression, CCC_ObjCInstanceMessage, CCC_ObjCClassMessage, CCC_ObjCInterfaceName, CCC_ObjCCategoryName, CCC_Recovery } |
Public Member Functions | |
| CodeCompletionContext (enum Kind Kind) | |
| Construct a new code-completion context of the given kind. | |
| CodeCompletionContext (enum Kind Kind, QualType T, IdentifierInfo **SelIdents=NULL, unsigned NumSelIdents=0) | |
| Construct a new code-completion context of the given kind. | |
| enum Kind | getKind () const |
| Retrieve the kind of code-completion context. | |
| QualType | getPreferredType () const |
| Retrieve the type that this expression would prefer to have, e.g., if the expression is a variable initializer or a function argument, the type of the corresponding variable or function parameter. | |
| QualType | getBaseType () const |
| Retrieve the type of the base object in a member-access expression. | |
| IdentifierInfo ** | getSelIdents () const |
| Retrieve the Objective-C selector identifiers. | |
| unsigned | getNumSelIdents () const |
| Retrieve the number of Objective-C selector identifiers. | |
| bool | wantConstructorResults () const |
| Determines whether we want C++ constructors as results within this context. | |
The context in which code completion occurred, so that the code-completion consumer can process the results accordingly.
Definition at line 152 of file CodeCompleteConsumer.h.
| CCC_Other |
An unspecified code-completion context. |
| CCC_OtherWithMacros |
An unspecified code-completion context where we should also add macro completions. |
| CCC_TopLevel |
Code completion occurred within a "top-level" completion context, e.g., at namespace or global scope. |
| CCC_ObjCInterface |
Code completion occurred within an Objective-C interface, protocol, or category interface. |
| CCC_ObjCImplementation |
Code completion occurred within an Objective-C implementation or category implementation. |
| CCC_ObjCIvarList |
Code completion occurred within the instance variable list of an Objective-C interface, implementation, or category implementation. |
| CCC_ClassStructUnion |
Code completion occurred within a class, struct, or union. |
| CCC_Statement |
Code completion occurred where a statement (or declaration) is expected in a function, method, or block. |
| CCC_Expression |
Code completion occurred where an expression is expected. |
| CCC_ObjCMessageReceiver |
Code completion occurred where an Objective-C message receiver is expected. |
| CCC_DotMemberAccess |
Code completion occurred on the right-hand side of a member access expression using the dot operator. The results of this completion are the members of the type being accessed. The type itself is available via |
| CCC_ArrowMemberAccess |
Code completion occurred on the right-hand side of a member access expression using the arrow operator. The results of this completion are the members of the type being accessed. The type itself is available via |
| CCC_ObjCPropertyAccess |
Code completion occurred on the right-hand side of an Objective-C property access expression. The results of this completion are the members of the type being accessed. The type itself is available via |
| CCC_EnumTag |
Code completion occurred after the "enum" keyword, to indicate an enumeration name. |
| CCC_UnionTag |
Code completion occurred after the "union" keyword, to indicate a union name. |
| CCC_ClassOrStructTag |
Code completion occurred after the "struct" or "class" keyword, to indicate a struct or class name. |
| CCC_ObjCProtocolName | |
| CCC_Namespace |
Code completion occurred where a namespace or namespace alias is expected. |
| CCC_Type |
Code completion occurred where a type name is expected. |
| CCC_Name |
Code completion occurred where a new name is expected. |
| CCC_PotentiallyQualifiedName |
Code completion occurred where a new name is expected and a qualified name is permissible. |
| CCC_MacroName |
Code completion occurred where an macro is being defined. |
| CCC_MacroNameUse |
Code completion occurred where a macro name is expected (without any arguments, in the case of a function-like macro). |
| CCC_PreprocessorExpression |
Code completion occurred within a preprocessor expression. |
| CCC_PreprocessorDirective |
Code completion occurred where a preprocessor directive is expected. |
| CCC_NaturalLanguage |
Code completion occurred in a context where natural language is expected, e.g., a comment or string literal. This context usually implies that no completions should be added, unless they come from an appropriate natural-language dictionary. |
| CCC_SelectorName |
Code completion for a selector, as in an expression. |
| CCC_TypeQualifiers |
Code completion within a type-qualifier list. |
| CCC_ParenthesizedExpression |
Code completion in a parenthesized expression, which means that we may also have types here in C and Objective-C (as well as in C++). |
| CCC_ObjCInstanceMessage |
Code completion where an Objective-C instance message is expcted. |
| CCC_ObjCClassMessage |
Code completion where an Objective-C class message is expected. |
| CCC_ObjCInterfaceName |
Code completion where the name of an Objective-C class is expected. |
| CCC_ObjCCategoryName |
Code completion where an Objective-C category name is expected. |
| CCC_Recovery |
An unknown context, in which we are recovering from a parsing error and don't know which completions we should give. |
Definition at line 154 of file CodeCompleteConsumer.h.
| clang::CodeCompletionContext::CodeCompletionContext | ( | enum Kind | Kind | ) | [inline] |
Construct a new code-completion context of the given kind.
Definition at line 279 of file CodeCompleteConsumer.h.
| clang::CodeCompletionContext::CodeCompletionContext | ( | enum Kind | Kind, |
| QualType | T, | ||
| IdentifierInfo ** | SelIdents = NULL, |
||
| unsigned | NumSelIdents = 0 |
||
| ) | [inline] |
Construct a new code-completion context of the given kind.
Definition at line 283 of file CodeCompleteConsumer.h.
References CCC_ArrowMemberAccess, CCC_DotMemberAccess, CCC_ObjCClassMessage, CCC_ObjCInstanceMessage, and CCC_ObjCPropertyAccess.
| QualType clang::CodeCompletionContext::getBaseType | ( | ) | const [inline] |
Retrieve the type of the base object in a member-access expression.
Definition at line 306 of file CodeCompleteConsumer.h.
| enum Kind clang::CodeCompletionContext::getKind | ( | ) | const [inline] |
Retrieve the kind of code-completion context.
Definition at line 297 of file CodeCompleteConsumer.h.
Referenced by CalculateHiddenNames().
| unsigned clang::CodeCompletionContext::getNumSelIdents | ( | ) | const [inline] |
Retrieve the number of Objective-C selector identifiers.
Definition at line 312 of file CodeCompleteConsumer.h.
| QualType clang::CodeCompletionContext::getPreferredType | ( | ) | const [inline] |
Retrieve the type that this expression would prefer to have, e.g., if the expression is a variable initializer or a function argument, the type of the corresponding variable or function parameter.
Definition at line 302 of file CodeCompleteConsumer.h.
| IdentifierInfo** clang::CodeCompletionContext::getSelIdents | ( | ) | const [inline] |
Retrieve the Objective-C selector identifiers.
Definition at line 309 of file CodeCompleteConsumer.h.
| bool CodeCompletionContext::wantConstructorResults | ( | ) | const |
Determines whether we want C++ constructors as results within this context.
Definition at line 35 of file CodeCompleteConsumer.cpp.
References CCC_ArrowMemberAccess, CCC_ClassOrStructTag, CCC_ClassStructUnion, CCC_DotMemberAccess, CCC_EnumTag, CCC_Expression, CCC_MacroName, CCC_MacroNameUse, CCC_Name, CCC_Namespace, CCC_NaturalLanguage, CCC_ObjCCategoryName, CCC_ObjCClassMessage, CCC_ObjCImplementation, CCC_ObjCInstanceMessage, CCC_ObjCInterface, CCC_ObjCInterfaceName, CCC_ObjCIvarList, CCC_ObjCMessageReceiver, CCC_ObjCPropertyAccess, CCC_ObjCProtocolName, CCC_Other, CCC_OtherWithMacros, CCC_ParenthesizedExpression, CCC_PotentiallyQualifiedName, CCC_PreprocessorDirective, CCC_PreprocessorExpression, CCC_Recovery, CCC_SelectorName, CCC_Statement, CCC_TopLevel, CCC_Type, CCC_TypeQualifiers, and CCC_UnionTag.