clang
10.0.0git
|
Classes | |
class | ASTDiff |
struct | ComparisonOptions |
struct | Node |
Represents a Clang AST node, alongside some additional information. More... | |
struct | NodeId |
Within a tree, this identifies a node by its preorder offset. More... | |
struct | SNodeId |
Identifies a node in a subtree by its postorder offset, starting at 1. More... | |
class | Subtree |
class | SyntaxTree |
SyntaxTree objects represent subtrees of the AST. More... | |
class | ZhangShashaMatcher |
Implementation of Zhang and Shasha's Algorithm for tree edit distance. More... | |
Typedefs | |
using | DynTypedNode = ast_type_traits::DynTypedNode |
Enumerations | |
enum | ChangeKind { None, Delete, Update, Insert, Move, UpdateMove } |
Functions | |
static bool | isSpecializedNodeExcluded (const Decl *D) |
static bool | isSpecializedNodeExcluded (const Stmt *S) |
static bool | isSpecializedNodeExcluded (CXXCtorInitializer *I) |
template<class T > | |
static bool | isNodeExcluded (const SourceManager &SrcMgr, T *N) |
static std::vector< NodeId > | getSubtreePostorder (const SyntaxTree::Impl &Tree, NodeId Root) |
static std::vector< NodeId > | getSubtreeBfs (const SyntaxTree::Impl &Tree, NodeId Root) |
static const DeclContext * | getEnclosingDeclContext (ASTContext &AST, const Stmt *S) |
static std::string | getInitializerValue (const CXXCtorInitializer *Init, const PrintingPolicy &TypePP) |
using clang::diff::DynTypedNode = typedef ast_type_traits::DynTypedNode |
Definition at line 18 of file ASTDiffInternal.h.
|
static |
Definition at line 383 of file ASTDiff.cpp.
|
static |
Definition at line 397 of file ASTDiff.cpp.
References clang::CXXCtorInitializer::getAnyMember(), clang::getAsString(), clang::QualType::getAsString(), clang::CXXCtorInitializer::getBaseClass(), clang::NamedDecl::getName(), clang::TypeSourceInfo::getType(), clang::CXXCtorInitializer::getTypeSourceInfo(), clang::CXXCtorInitializer::isAnyMemberInitializer(), clang::CXXCtorInitializer::isBaseInitializer(), and clang::CXXCtorInitializer::isDelegatingInitializer().
|
static |
Definition at line 293 of file ASTDiff.cpp.
References clang::diff::Node::Children, clang::diff::SyntaxTree::Impl::getMutableNode(), clang::diff::SyntaxTree::Impl::getNode(), clang::diff::SyntaxTree::Impl::getRootId(), clang::diff::SyntaxTree::Impl::getSize(), Id, clang::diff::SyntaxTree::Impl::Leaves, clang::diff::Node::LeftMostDescendant, clang::diff::SyntaxTree::Impl::NodesBfs, clang::diff::SyntaxTree::Impl::Parent, and clang::diff::SyntaxTree::Impl::PostorderIds.
|
static |
Definition at line 280 of file ASTDiff.cpp.
References clang::diff::Node::Children, clang::diff::SyntaxTree::Impl::getNode(), and Id.
Referenced by clang::diff::Subtree::Subtree().
|
static |
Definition at line 172 of file ASTDiff.cpp.
References clang::SourceManager::getSpellingLoc(), clang::SourceManager::isInMainFile(), isSpecializedNodeExcluded(), and clang::SourceLocation::isValid().
Definition at line 165 of file ASTDiff.cpp.
References clang::Decl::isImplicit().
Definition at line 166 of file ASTDiff.cpp.
|
static |
Definition at line 167 of file ASTDiff.cpp.
References clang::CXXCtorInitializer::isWritten().
Referenced by isNodeExcluded().