#include "clang/Analysis/MacroExpansionContext.h"
#include "llvm/Support/Debug.h"
#include <optional>
#define DEBUG_TYPE …
static void dumpTokenInto(const clang::Preprocessor &PP, llvm::raw_ostream &OS,
clang::Token Tok);
namespace clang {
namespace detail {
class MacroExpansionRangeRecorder : public PPCallbacks { … };
}
}
usingnamespaceclang;
MacroExpansionContext::MacroExpansionContext(const LangOptions &LangOpts)
: … { … }
void MacroExpansionContext::registerForPreprocessor(Preprocessor &NewPP) { … }
std::optional<StringRef>
MacroExpansionContext::getExpandedText(SourceLocation MacroExpansionLoc) const { … }
std::optional<StringRef>
MacroExpansionContext::getOriginalText(SourceLocation MacroExpansionLoc) const { … }
void MacroExpansionContext::dumpExpansionRanges() const { … }
void MacroExpansionContext::dumpExpandedTexts() const { … }
void MacroExpansionContext::dumpExpansionRangesToStream(raw_ostream &OS) const { … }
void MacroExpansionContext::dumpExpandedTextsToStream(raw_ostream &OS) const { … }
static void dumpTokenInto(const Preprocessor &PP, raw_ostream &OS, Token Tok) { … }
void MacroExpansionContext::onTokenLexed(const Token &Tok) { … }