clang-tools  4.0.0
Namespaces | Typedefs | Functions | Variables
PreprocessorTracker.cpp File Reference
#include "clang/Lex/LexDiagnostic.h"
#include "PreprocessorTracker.h"
#include "clang/Lex/MacroArgs.h"
#include "clang/Lex/PPCallbacks.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/Support/StringPool.h"
#include "llvm/Support/raw_ostream.h"
#include "ModularizeUtilities.h"
Include dependency graph for PreprocessorTracker.cpp:

Go to the source code of this file.

Namespaces

 Modularize
 

Typedefs

typedef llvm::PooledStringPtr Modularize::StringHandle
 
typedef int Modularize::HeaderHandle
 
typedef int Modularize::InclusionPathHandle
 

Functions

static std::string Modularize::getSourceLocationString (clang::Preprocessor &PP, clang::SourceLocation Loc)
 
static std::string Modularize::getSourceLocationFile (clang::Preprocessor &PP, clang::SourceLocation Loc)
 
static void Modularize::getSourceLocationLineAndColumn (clang::Preprocessor &PP, clang::SourceLocation Loc, int &Line, int &Column)
 
static std::string Modularize::getSourceString (clang::Preprocessor &PP, clang::SourceRange Range)
 
static std::string Modularize::getSourceLine (clang::Preprocessor &PP, clang::SourceLocation Loc)
 
static std::string Modularize::getSourceLine (clang::Preprocessor &PP, clang::FileID FileID, int Line)
 
static std::string Modularize::getMacroUnexpandedString (clang::SourceRange Range, clang::Preprocessor &PP, llvm::StringRef MacroName, const clang::MacroInfo *MI)
 
static std::string Modularize::getMacroExpandedString (clang::Preprocessor &PP, llvm::StringRef MacroName, const clang::MacroInfo *MI, const clang::MacroArgs *Args)
 

Variables

const HeaderHandle Modularize::HeaderHandleInvalid = -1
 
const InclusionPathHandle Modularize::InclusionPathHandleInvalid = -1
 

Variable Documentation

bool BlockCheckHeaderListOnly

Definition at line 1257 of file PreprocessorTracker.cpp.

int Column

Definition at line 528 of file PreprocessorTracker.cpp.

Referenced by Location::Location().

std::vector<ConditionalExpansionInstance> ConditionalExpansionInstances

Definition at line 727 of file PreprocessorTracker.cpp.

ConditionalExpansionMap ConditionalExpansions

Definition at line 1266 of file PreprocessorTracker.cpp.

StringHandle ConditionUnexpanded

Definition at line 723 of file PreprocessorTracker.cpp.

clang::PPCallbacks::ConditionValueKind ConditionValue

Definition at line 673 of file PreprocessorTracker.cpp.

InclusionPathHandle CurrentInclusionPathHandle

Definition at line 1262 of file PreprocessorTracker.cpp.

PPItemKey DefinitionLocation

Definition at line 577 of file PreprocessorTracker.cpp.

StringHandle DefinitionSourceLine

Definition at line 579 of file PreprocessorTracker.cpp.

clang::tok::PPKeywordKind DirectiveKind

Definition at line 721 of file PreprocessorTracker.cpp.

HeaderHandle File
llvm::SmallVector<std::string, 32> HeaderList

Definition at line 1255 of file PreprocessorTracker.cpp.

std::vector<StringHandle> HeaderPaths

Definition at line 1259 of file PreprocessorTracker.cpp.

llvm::SmallSet<HeaderHandle, 32> HeadersInThisCompile

Definition at line 1263 of file PreprocessorTracker.cpp.

std::vector<HeaderHandle> HeaderStack

Definition at line 1260 of file PreprocessorTracker.cpp.

std::vector<PPItemKey> IncludeDirectives

Definition at line 1264 of file PreprocessorTracker.cpp.

std::vector<InclusionPathHandle> InclusionPathHandles

Definition at line 581 of file PreprocessorTracker.cpp.

std::vector<HeaderInclusionPath> InclusionPaths

Definition at line 1261 of file PreprocessorTracker.cpp.

bool InNestedHeader

Definition at line 1267 of file PreprocessorTracker.cpp.

StringHandle InstanceSourceLine

Definition at line 636 of file PreprocessorTracker.cpp.

int Line
StringHandle MacroExpanded

Definition at line 575 of file PreprocessorTracker.cpp.

std::vector<MacroExpansionInstance> MacroExpansionInstances

Definition at line 640 of file PreprocessorTracker.cpp.

MacroExpansionMap MacroExpansions

Definition at line 1265 of file PreprocessorTracker.cpp.

StringHandle MacroUnexpanded

Definition at line 634 of file PreprocessorTracker.cpp.

StringHandle Name

Definition at line 525 of file PreprocessorTracker.cpp.

Referenced by Modularize::getMacroExpandedString().

std::vector<HeaderHandle> Path
clang::Preprocessor& PP

Definition at line 776 of file PreprocessorTracker.cpp.

PreprocessorTrackerImpl& PPTracker
std::string RootHeaderFile

Definition at line 777 of file PreprocessorTracker.cpp.

llvm::StringPool Strings