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: