#include #include #include ">

clang: lib/Tooling/ASTDiff/ASTDiff.cpp File Reference (original) (raw)

#include "[clang/Tooling/ASTDiff/ASTDiff.h](ASTDiff%5F8h%5Fsource.html)"
#include "[clang/AST/ParentMapContext.h](ParentMapContext%5F8h%5Fsource.html)"
#include "[clang/AST/RecursiveASTVisitor.h](RecursiveASTVisitor%5F8h%5Fsource.html)"
#include "[clang/Basic/SourceManager.h](SourceManager%5F8h%5Fsource.html)"
#include "[clang/Lex/Lexer.h](Lexer%5F8h%5Fsource.html)"
#include "llvm/ADT/PriorityQueue.h"
#include <limits>
#include <memory>
#include <optional>
#include <unordered_set>

Go to the source code of this file.

Classes
class clang::diff::ASTDiff::Impl
class clang::diff::SyntaxTree::Impl
Represents the AST of a TranslationUnit. More...
struct clang::diff::SNodeId
Identifies a node in a subtree by its postorder offset, starting at 1. More...
class clang::diff::Subtree
class clang::diff::ZhangShashaMatcher
Implementation of Zhang and Shasha's Algorithm for tree edit distance. More...
Namespaces
namespace clang
The JSON file list parser is used to communicate input to InstallAPI.
namespace clang::diff
Functions
static bool clang::diff::isSpecializedNodeExcluded (const Decl *D)
static bool clang::diff::isSpecializedNodeExcluded (const Stmt *S)
static bool clang::diff::isSpecializedNodeExcluded (CXXCtorInitializer *I)
template<class T>
static bool clang::diff::isNodeExcluded (const SourceManager &SrcMgr, T *N)
static std::vector< NodeId > clang::diff::getSubtreePostorder (const SyntaxTree::Impl &Tree, NodeId Root)
static std::vector< NodeId > clang::diff::getSubtreeBfs (const SyntaxTree::Impl &Tree, NodeId Root)
static const DeclContext * clang::diff::getEnclosingDeclContext (ASTContext &AST, const Stmt *S)
static std::string clang::diff::getInitializerValue (const CXXCtorInitializer *Init, const PrintingPolicy &TypePP)