clang  6.0.0svn
Public Types | Public Member Functions | Friends | List of all members
clang::ast_matchers::BoundNodes Class Reference

Maps string IDs to AST nodes matched by parts of a matcher. More...

#include "clang/ASTMatchers/ASTMatchers.h"

Public Types

using IDToNodeMap = internal::BoundNodesMap::IDToNodeMap
 Type of mapping from binding identifiers to bound nodes. More...
 

Public Member Functions

template<typename T >
const TgetNodeAs (StringRef ID) const
 Returns the AST node bound to ID. More...
 
const IDToNodeMapgetMap () const
 Retrieve mapping from binding identifiers to bound nodes. More...
 

Friends

class internal::BoundNodesTreeBuilder
 

Detailed Description

Maps string IDs to AST nodes matched by parts of a matcher.

The bound nodes are generated by calling bind("id") on the node matchers of the nodes we want to access later.

The instances of BoundNodes are created by MatchFinder when the user's callbacks are executed every time a match is found.

Definition at line 102 of file ASTMatchers.h.

Member Typedef Documentation

◆ IDToNodeMap

using clang::ast_matchers::BoundNodes::IDToNodeMap = internal::BoundNodesMap::IDToNodeMap

Type of mapping from binding identifiers to bound nodes.

This type is an associative container with a key type of std::string and a value type of clang::ast_type_traits::DynTypedNode

Definition at line 116 of file ASTMatchers.h.

Member Function Documentation

◆ getMap()

const IDToNodeMap& clang::ast_matchers::BoundNodes::getMap ( ) const
inline

Retrieve mapping from binding identifiers to bound nodes.

Definition at line 119 of file ASTMatchers.h.

Referenced by clang::tooling::ReplaceNodeWithTemplate::run().

◆ getNodeAs()

template<typename T >
const T* clang::ast_matchers::BoundNodes::getNodeAs ( StringRef  ID) const
inline

Returns the AST node bound to ID.

Returns NULL if there was no node bound to ID or if there is a node but it cannot be converted to the specified type.

Definition at line 109 of file ASTMatchers.h.

References clang::T.

Referenced by clang::tooling::ReplaceStmtWithText::run(), clang::tooling::ReplaceStmtWithStmt::run(), and clang::tooling::ReplaceIfStmtWithItsBody::run().

Friends And Related Function Documentation

◆ internal::BoundNodesTreeBuilder

friend class internal::BoundNodesTreeBuilder
friend

Definition at line 124 of file ASTMatchers.h.


The documentation for this class was generated from the following file: