#include "clang/AST/ASTContext.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"
#include "clang/Tooling/Tooling.h"
#include "llvm/ADT/SmallString.h"
#include "gtest/gtest.h"
namespace clang {
PrintingPolicyAdjuster;
NodePrinter;
NodeFilter;
template <typename NodeType>
class PrintMatch : public ast_matchers::MatchFinder::MatchCallback { … };
template <typename NodeType> bool NoNodeFilter(const NodeType *) { … }
template <typename NodeType, typename Matcher>
::testing::AssertionResult
PrintedNodeMatches(StringRef Code, const std::vector<std::string> &Args,
const Matcher &NodeMatch, StringRef ExpectedPrinted,
StringRef FileName, NodePrinter<NodeType> Printer,
PrintingPolicyAdjuster PolicyAdjuster = nullptr,
bool AllowError = false,
NodeFilter<NodeType> Filter = &NoNodeFilter<NodeType>) { … }
}