13#ifndef LLVM_CLANG_LEX_CODECOMPLETIONHANDLER_H
14#define LLVM_CLANG_LEX_CODECOMPLETIONHANDLER_H
18#include "llvm/ADT/StringRef.h"
65 unsigned ArgumentIndex) { }
Defines the clang::IdentifierInfo, clang::IdentifierTable, and clang::Selector interfaces.
Defines the clang::SourceLocation class and associated facilities.
Callback handler that receives notifications when performing code completion within the preprocessor.
virtual void CodeCompleteIncludedFile(llvm::StringRef Dir, bool IsAngled)
Callback invoked when performing code completion inside the filename part of an include directive.
virtual void CodeCompleteModuleImport(SourceLocation ImportLoc, ModuleIdPath Path)
Callback invoked when performing code completion inside the module name part of an import directive.
virtual void CodeCompleteMacroArgument(IdentifierInfo *Macro, MacroInfo *MacroInfo, unsigned ArgumentIndex)
Callback invoked when performing code completion inside a function-like macro argument.
virtual ~CodeCompletionHandler()
virtual void CodeCompleteMacroName(bool IsDefinition)
Callback invoked when performing code completion in a context where the name of a macro is expected.
virtual void CodeCompletePreprocessorExpression()
Callback invoked when performing code completion in a preprocessor expression, such as the condition ...
virtual void CodeCompleteNaturalLanguage()
Callback invoked when performing code completion in a part of the file where we expect natural langua...
virtual void CodeCompleteInConditionalExclusion()
Callback invoked when performing code completion within a block of code that was excluded due to prep...
virtual void CodeCompleteDirective(bool InConditional)
Callback invoked when performing code completion for a preprocessor directive.
One of these records is kept for each identifier that is lexed.
Encapsulates the data about a macro definition (e.g.
Encodes a location in the source.
The JSON file list parser is used to communicate input to InstallAPI.
ArrayRef< IdentifierLoc > ModuleIdPath
A sequence of identifier/location pairs used to describe a particular module or submodule,...