clang API Documentation

Classes | Namespaces | Enumerations
Preprocessor.h File Reference

Defines the clang::Preprocessor interface. More...

#include "clang/Basic/Builtins.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/IdentifierTable.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Lex/Lexer.h"
#include "clang/Lex/MacroInfo.h"
#include "clang/Lex/ModuleMap.h"
#include "clang/Lex/PPCallbacks.h"
#include "clang/Lex/PTHLexer.h"
#include "clang/Lex/PTHManager.h"
#include "clang/Lex/TokenLexer.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/IntrusiveRefCntPtr.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Support/Allocator.h"
#include <memory>
#include <vector>
Include dependency graph for Preprocessor.h:

Go to the source code of this file.

Classes

class  clang::TokenValue
 Stores token information for comparing actual tokens with predefined values. Only handles simple tokens and identifiers. More...
class  clang::Preprocessor
 Engages in a tight little dance with the lexer to efficiently preprocess tokens. More...
struct  clang::Preprocessor::IncludeStackInfo
 Keeps track of the stack of files currently #included, and macros currently being expanded from, not counting CurLexer/CurTokenLexer.
struct  clang::Preprocessor::MacroExpandsInfo
struct  clang::Preprocessor::MacroInfoChain
struct  clang::Preprocessor::DeserializedMacroInfoChain
class  clang::CommentHandler
 Abstract base class that describes a handler that will receive source ranges for each of the comments encountered in the source file. More...

Namespaces

namespace  llvm
namespace  clang

Enumerations

enum  clang::MacroUse { clang::MU_Other = 0, clang::MU_Define = 1, clang::MU_Undef = 2 }
 Context in which macro name is used. More...

Detailed Description

Defines the clang::Preprocessor interface.

Definition in file Preprocessor.h.