| Value | Meaning | 
|---|---|
| unexposed0 | \brief The context for completions is unexposed, as only Clang results should be included. (This is equivalent to having no context bits set.)  | 
| anyType1 << 0 | \brief Completions for any possible type should be included in the results.  | 
| anyValue1 << 1 | \brief Completions for any possible value (variables, function calls, etc.) should be included in the results.  | 
| objCObjectValue1 << 2 | \brief Completions for values that resolve to an Objective-C object should be included in the results.  | 
| objCSelectorValue1 << 3 | \brief Completions for values that resolve to an Objective-C selector should be included in the results.  | 
| cxxClassTypeValue1 << 4 | \brief Completions for values that resolve to a C++ class type should be included in the results.  | 
| dotMemberAccess1 << 5 | \brief Completions for fields of the member being accessed using the dot operator should be included in the results.  | 
| arrowMemberAccess1 << 6 | \brief Completions for fields of the member being accessed using the arrow operator should be included in the results.  | 
| objCPropertyAccess1 << 7 | \brief Completions for properties of the Objective-C object being accessed using the dot operator should be included in the results.  | 
| enumTag1 << 8 | \brief Completions for enum tags should be included in the results.  | 
| unionTag1 << 9 | \brief Completions for union tags should be included in the results.  | 
| structTag1 << 10 | \brief Completions for struct tags should be included in the results.  | 
| classTag1 << 11 | \brief Completions for C++ class names should be included in the results.  | 
| namespace1 << 12 | \brief Completions for C++ namespaces and namespace aliases should be included in the results.  | 
| nestedNameSpecifier1 << 13 | \brief Completions for C++ nested name specifiers should be included in the results.  | 
| objCInterface1 << 14 | \brief Completions for Objective-C interfaces (classes) should be included in the results.  | 
| objCProtocol1 << 15 | \brief Completions for Objective-C protocols should be included in the results.  | 
| objCCategory1 << 16 | \brief Completions for Objective-C categories should be included in the results.  | 
| objCInstanceMessage1 << 17 | \brief Completions for Objective-C instance messages should be included in the results.  | 
| objCClassMessage1 << 18 | \brief Completions for Objective-C class messages should be included in the results.  | 
| objCSelectorName1 << 19 | \brief Completions for Objective-C selector names should be included in the results.  | 
| macroName1 << 20 | \brief Completions for preprocessor macro names should be included in the results.  | 
| naturalLanguage1 << 21 | \brief Natural language completions should be included in the results.  | 
| unknown(1 << 22) - 1 | \brief The current context is unknown, so set all contexts.  | 
\brief Bits that represent the context under which completion is occurring.
The enumerators in this enumeration may be bitwise-OR'd together if multiple contexts are occurring simultaneously.