clang-tools  14.0.0git
Classes | Namespaces | Typedefs
PPCallbacksTracker.h File Reference
#include "clang/Lex/PPCallbacks.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Basic/SourceManager.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/GlobPattern.h"
#include <string>
#include <vector>
Include dependency graph for PPCallbacksTracker.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


struct  clang::pp_trace::Argument
class  clang::pp_trace::CallbackCall
 This class represents one callback call by name and an array of arguments. More...
class  clang::pp_trace::PPCallbacksTracker
 This class overrides the PPCallbacks class for tracking preprocessor activity by means of its callback functions. More...


 ===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//


using clang::pp_trace::FilterType = std::vector< std::pair< llvm::GlobPattern, bool > >

Detailed Description

Classes and definitions for preprocessor tracking.

The core definition is the PPCallbacksTracker class, derived from Clang's PPCallbacks class from the Lex library, which overrides all the callbacks and collects information about each callback call, saving it in a data structure built up of CallbackCall and Argument objects, which record the preprocessor callback name and arguments in high-level string form for later inspection.

Definition in file PPCallbacksTracker.h.