Home | History | Annotate | Download | only in Lex

Lines Matching defs:Preprocessor

1 //===- Preprocessor.cpp - C Language Family Preprocessor Implementation ---===//
9 // This file implements the Preprocessor interface.
16 // -fworking-directory - #line's with preprocessor's working dir.
27 #include "clang/Lex/Preprocessor.h"
79 Preprocessor::Preprocessor(std::shared_ptr<PreprocessorOptions> PPOpts,
91 // deferred to Preprocessor::Initialize().
169 Preprocessor::~Preprocessor() {
195 void Preprocessor::Initialize(const TargetInfo &Target,
213 void Preprocessor::InitializeForModelFile() {
225 void Preprocessor::FinalizeForModelFile() {
231 void Preprocessor::DumpToken(const Token &Tok, bool DumpFlags) const {
255 void Preprocessor::DumpLocation(SourceLocation Loc) const {
259 void Preprocessor::DumpMacro(const MacroInfo &MI) const {
268 void Preprocessor::PrintStats() {
269 llvm::errs() << "\n*** Preprocessor Stats:\n";
306 Preprocessor::macro_iterator
307 Preprocessor::macro_begin(bool IncludeExternalMacros) const {
321 size_t Preprocessor::getTotalMemory() const {
333 Preprocessor::macro_iterator
334 Preprocessor::macro_end(bool IncludeExternalMacros) const {
351 StringRef Preprocessor::getLastMacroWithSpelling(
356 for (Preprocessor::macro_iterator I = macro_begin(), E = macro_end();
378 void Preprocessor::recomputeCurLexerKind() {
387 bool Preprocessor::SetCodeCompletionPoint(const FileEntry *File,
443 void Preprocessor::CodeCompleteIncludedFile(llvm::StringRef Dir,
450 void Preprocessor::CodeCompleteNaturalLanguage() {
459 StringRef Preprocessor::getSpelling(const Token &Tok,
481 void Preprocessor::CreateString(StringRef Str, Token &Tok,
501 SourceLocation Preprocessor::SplitToken(SourceLocation Loc, unsigned Length) {
517 Module *Preprocessor::getCurrentModule() {
525 // Preprocessor Initialization Methods
530 void Preprocessor::EnterMainSourceFile() {
531 // We do not allow the preprocessor to reenter the main file. Doing so will
555 // Preprocess Predefines to populate the initial preprocessor state.
591 void Preprocessor::setPCHThroughHeaderFileID(FileID FID) {
597 bool Preprocessor::isPCHThroughHeader(const FileEntry *FE) {
603 bool Preprocessor::creatingPCHWithThroughHeader() {
608 bool Preprocessor::usingPCHWithThroughHeader() {
613 bool Preprocessor::creatingPCHWithPragmaHdrStop() {
617 bool Preprocessor::usingPCHWithPragmaHdrStop() {
626 void Preprocessor::SkipTokensWhileUsingPCH() {
666 void Preprocessor::replayPreambleConditionalStack() {
683 void Preprocessor::EndSourceFile() {
696 IdentifierInfo *Preprocessor::LookUpIdentifierInfo(Token &Identifier) const {
729 void Preprocessor::SetPoisonReason(IdentifierInfo *II, unsigned DiagID) {
733 void Preprocessor::PoisonSEHIdentifiers(bool Poison) {
747 void Preprocessor::HandlePoisonedIdentifier(Token & Identifier) {
781 void Preprocessor::updateOutOfDateIdentifier(IdentifierInfo &II) const {
794 bool Preprocessor::HandleIdentifier(Token &Identifier) {
803 // serialized with isPoisoned = true, but our preprocessor may have
886 void Preprocessor::Lex(Token &Result) {
986 bool Preprocessor::LexHeaderName(Token &FilenameTok, bool AllowMacroExpansion) {
1075 void Preprocessor::CollectPpImportSuffix(SmallVectorImpl<Token> &Toks) {
1129 bool Preprocessor::LexAfterModuleImport(Token &Result) {
1304 void Preprocessor::makeModuleVisible(Module *M, SourceLocation Loc) {
1321 bool Preprocessor::FinishLexStringLiteral(Token &Result, std::string &String,
1362 bool Preprocessor::parseSimpleIntegerLiteral(Token &Tok, uint64_t &Value) {
1382 void Preprocessor::addCommentHandler(CommentHandler *Handler) {
1389 void Preprocessor::removeCommentHandler(CommentHandler *Handler) {
1396 bool Preprocessor::HandleComment(Token &result, SourceRange Comment) {
1418 void Preprocessor::createPreprocessingRecord() {