clang: clang::CodeCompletionContext Class Reference (original) (raw)

Enumerator

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 CodeCompletionContext::getType().

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 CodeCompletionContext::getType().

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 CodeCompletionContext::getType().

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

Code completion occurred where a protocol name is expected.

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_NewName

Code completion occurred where a new name is expected.

CCC_SymbolOrNewName

Code completion occurred where both a new name and an existing symbol is permissible.

CCC_Symbol

Code completion occurred where an existing name(such as type, function or variable) is expected.

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 @selector 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 expected.

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_IncludedFile

Code completion inside the filename part of a #include directive.

CCC_Attribute

Code completion of an attribute name.

CCC_Recovery

An unknown context, in which we are recovering from a parsing error and don't know which completions we should give.

CCC_ObjCClassForwardDecl

CCC_TopLevelOrExpression

Code completion at a top level, i.e.

in a namespace or global scope, but also in expression statements. This is because REPL inputs can be declarations or expression statements.