clang 19.0.0git
Classes | Namespaces | Typedefs | Enumerations
Preprocessor.h File Reference

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

#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/DiagnosticIDs.h"
#include "clang/Basic/IdentifierTable.h"
#include "clang/Basic/LLVM.h"
#include "clang/Basic/LangOptions.h"
#include "clang/Basic/Module.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Basic/TokenKinds.h"
#include "clang/Lex/HeaderSearch.h"
#include "clang/Lex/Lexer.h"
#include "clang/Lex/MacroInfo.h"
#include "clang/Lex/ModuleLoader.h"
#include "clang/Lex/ModuleMap.h"
#include "clang/Lex/PPCallbacks.h"
#include "clang/Lex/Token.h"
#include "clang/Lex/TokenLexer.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/FoldingSet.h"
#include "llvm/ADT/FunctionExtras.h"
#include "llvm/ADT/PointerUnion.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/TinyPtrVector.h"
#include "llvm/ADT/iterator_range.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Registry.h"
#include <cassert>
#include <cstddef>
#include <cstdint>
#include <map>
#include <memory>
#include <optional>
#include <string>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

class  clang::TokenValue
 Stores token information for comparing actual tokens with predefined values. More...
 
class  clang::Preprocessor
 Engages in a tight little dance with the lexer to efficiently preprocess tokens. More...
 
struct  clang::Preprocessor::PreambleSkipInfo
 
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...
 
class  clang::EmptylineHandler
 Abstract base class that describes a handler that will receive source ranges for empty lines encountered in the source file. More...
 

Namespaces

namespace  llvm
 YAML serialization mapping.
 
namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
 
namespace  clang::Builtin
 

Typedefs

using clang::PragmaHandlerRegistry = llvm::Registry< PragmaHandler >
 Registry of pragma handlers added by plugins.
 

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.