clang: clang::IncrementalParser Class Reference (original) (raw)
Provides support for incremental compilation. More...
#include "[/work/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/Interpreter/IncrementalParser.h](IncrementalParser%5F8h%5Fsource.html)"
| Public Member Functions | |
|---|---|
| IncrementalParser (CompilerInstance &Instance, IncrementalAction *Act, llvm::Error &Err, std::list< PartialTranslationUnit > &PTUs) | |
| virtual | ~IncrementalParser () |
| virtual llvm::Expected< TranslationUnitDecl * > | Parse (llvm::StringRef Input) |
| Parses incremental input by creating an in-memory file. | |
| void | CleanUpPTU (TranslationUnitDecl *MostRecentTU) |
| PartialTranslationUnit & | RegisterPTU (TranslationUnitDecl *TU, std::unique_ptr< llvm::Module > M={}) |
| Register a PTU produced by Parse. |
| Protected Attributes | |
|---|---|
| Sema & | S |
| The Sema performing the incremental compilation. | |
| std::unique_ptr< Parser > | P |
| Parser. | |
| ASTConsumer * | Consumer = nullptr |
| Consumer to process the produced top level decls. Owned by Act. | |
| unsigned | InputCount = 0 |
| Counts the number of direct user input lines that have been parsed. | |
| IncrementalAction * | Act = nullptr |
| The FrontendAction used during incremental parsing. | |
| std::list< PartialTranslationUnit > & | PTUs |
Provides support for incremental compilation.
Keeps track of the state changes between the subsequent incremental input.
Definition at line 38 of file IncrementalParser.h.
◆ ~IncrementalParser()
| clang::IncrementalParser::~IncrementalParser ( ) | virtual |
|---|
◆ CleanUpPTU()
◆ Parse()
Parses incremental input by creating an in-memory file.
Returns
a [PartialTranslationUnit](structclang%5F1%5F1PartialTranslationUnit.html "The class keeps track of various objects created as part of processing incremental inputs.") which holds information about the [TranslationUnitDecl](classclang%5F1%5F1TranslationUnitDecl.html "The top declaration context.").
Definition at line 108 of file IncrementalParser.cpp.
References clang::SrcMgr::C_User, clang::Preprocessor::EnterSourceFile(), clang::Preprocessor::getLangOpts(), InputCount, clang::Token::is(), clang::Preprocessor::isIncrementalProcessingEnabled(), clang::Preprocessor::Lex(), memcpy(), S, SM, and Tok.
◆ RegisterPTU()
◆ Act
◆ Consumer
◆ InputCount
| unsigned clang::IncrementalParser::InputCount = 0 | protected |
|---|
Counts the number of direct user input lines that have been parsed.
Definition at line 50 of file IncrementalParser.h.
Referenced by Parse().
◆ P
| std::unique_ptr<Parser> clang::IncrementalParser::P | protected |
|---|
◆ PTUs
◆ S
| Sema& clang::IncrementalParser::S | protected |
|---|
The documentation for this class was generated from the following files:
- lib/Interpreter/IncrementalParser.h
- lib/Interpreter/IncrementalParser.cpp