clang API Documentation

Public Member Functions
clang::ParentMap Class Reference

#include <ParentMap.h>

List of all members.

Public Member Functions

 ParentMap (Stmt *ASTRoot)
 ~ParentMap ()
void addStmt (Stmt *S)
 Adds and/or updates the parent/child-relations of the complete stmt tree of S. All children of S including indirect descendants are visited and updated or inserted but not the parents of S.
void setParent (const Stmt *S, const Stmt *Parent)
StmtgetParent (Stmt *) const
StmtgetParentIgnoreParens (Stmt *) const
StmtgetParentIgnoreParenCasts (Stmt *) const
StmtgetParentIgnoreParenImpCasts (Stmt *) const
StmtgetOuterParenParent (Stmt *) const
const StmtgetParent (const Stmt *S) const
const StmtgetParentIgnoreParens (const Stmt *S) const
const StmtgetParentIgnoreParenCasts (const Stmt *S) const
bool hasParent (Stmt *S) const
bool isConsumedExpr (Expr *E) const
bool isConsumedExpr (const Expr *E) const

Detailed Description

Definition at line 21 of file ParentMap.h.


Constructor & Destructor Documentation

ParentMap::ParentMap ( Stmt ASTRoot)

Definition at line 95 of file ParentMap.cpp.

References BuildParentMap().

Definition at line 103 of file ParentMap.cpp.


Member Function Documentation

void ParentMap::addStmt ( Stmt S)

Adds and/or updates the parent/child-relations of the complete stmt tree of S. All children of S including indirect descendants are visited and updated or inserted but not the parents of S.

Definition at line 107 of file ParentMap.cpp.

References BuildParentMap().

Definition at line 148 of file ParentMap.cpp.

References getParent(), Paren, and S.

Stmt * ParentMap::getParent ( Stmt S) const
const Stmt* clang::ParentMap::getParent ( const Stmt S) const [inline]

Definition at line 43 of file ParentMap.h.

References getParent().

const Stmt* clang::ParentMap::getParentIgnoreParenCasts ( const Stmt S) const [inline]

Definition at line 51 of file ParentMap.h.

References getParentIgnoreParenCasts().

Definition at line 140 of file ParentMap.cpp.

References getParent(), and S.

const Stmt* clang::ParentMap::getParentIgnoreParens ( const Stmt S) const [inline]

Definition at line 47 of file ParentMap.h.

References getParentIgnoreParens().

bool clang::ParentMap::hasParent ( Stmt S) const [inline]

Definition at line 55 of file ParentMap.h.

References getParent().

bool clang::ParentMap::isConsumedExpr ( const Expr E) const [inline]

Definition at line 61 of file ParentMap.h.

References isConsumedExpr().

void ParentMap::setParent ( const Stmt S,
const Stmt Parent 
)

Manually sets the parent of S to Parent.

If S is already in the map, this method will update the mapping.

Definition at line 113 of file ParentMap.cpp.

Referenced by addParentsForSyntheticStmts().


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