class ParentMap
Declaration
class ParentMap { /* full declaration omitted */ };
Declared at: clang/include/clang/AST/ParentMap.h:20
Member Variables
- private void* Impl
Method Overview
- public ParentMap(clang::Stmt * ASTRoot)
- public void addStmt(clang::Stmt * S)
- public clang::Stmt * getOuterParenParent(clang::Stmt *) const
- public clang::Stmt * getParent(clang::Stmt *) const
- public const clang::Stmt * getParent(const clang::Stmt * S) const
- public clang::Stmt * getParentIgnoreParenCasts(clang::Stmt *) const
- public const clang::Stmt * getParentIgnoreParenCasts(const clang::Stmt * S) const
- public clang::Stmt * getParentIgnoreParenImpCasts(clang::Stmt *) const
- public clang::Stmt * getParentIgnoreParens(clang::Stmt *) const
- public const clang::Stmt * getParentIgnoreParens(const clang::Stmt * S) const
- public bool hasParent(const clang::Stmt * S) const
- public bool isConsumedExpr(clang::Expr * E) const
- public bool isConsumedExpr(const clang::Expr * E) const
- public void setParent(const clang::Stmt * S, const clang::Stmt * Parent)
- public ~ParentMap()
Methods
¶ParentMap(clang::Stmt* ASTRoot)
ParentMap(clang::Stmt* ASTRoot)
Declared at: clang/include/clang/AST/ParentMap.h:23
Parameters
- clang::Stmt* ASTRoot
¶void addStmt(clang::Stmt* S)
void addStmt(clang::Stmt* S)
Description
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.
Declared at: clang/include/clang/AST/ParentMap.h:29
Parameters
- clang::Stmt* S
¶clang::Stmt* getOuterParenParent(
clang::Stmt*) const
clang::Stmt* getOuterParenParent(
clang::Stmt*) const
Declared at: clang/include/clang/AST/ParentMap.h:40
Parameters
¶clang::Stmt* getParent(clang::Stmt*) const
clang::Stmt* getParent(clang::Stmt*) const
Declared at: clang/include/clang/AST/ParentMap.h:36
Parameters
¶const clang::Stmt* getParent(
const clang::Stmt* S) const
const clang::Stmt* getParent(
const clang::Stmt* S) const
Declared at: clang/include/clang/AST/ParentMap.h:42
Parameters
- const clang::Stmt* S
¶clang::Stmt* getParentIgnoreParenCasts(
clang::Stmt*) const
clang::Stmt* getParentIgnoreParenCasts(
clang::Stmt*) const
Declared at: clang/include/clang/AST/ParentMap.h:38
Parameters
¶const clang::Stmt* getParentIgnoreParenCasts(
const clang::Stmt* S) const
const clang::Stmt* getParentIgnoreParenCasts(
const clang::Stmt* S) const
Declared at: clang/include/clang/AST/ParentMap.h:50
Parameters
- const clang::Stmt* S
¶clang::Stmt* getParentIgnoreParenImpCasts(
clang::Stmt*) const
clang::Stmt* getParentIgnoreParenImpCasts(
clang::Stmt*) const
Declared at: clang/include/clang/AST/ParentMap.h:39
Parameters
¶clang::Stmt* getParentIgnoreParens(
clang::Stmt*) const
clang::Stmt* getParentIgnoreParens(
clang::Stmt*) const
Declared at: clang/include/clang/AST/ParentMap.h:37
Parameters
¶const clang::Stmt* getParentIgnoreParens(
const clang::Stmt* S) const
const clang::Stmt* getParentIgnoreParens(
const clang::Stmt* S) const
Declared at: clang/include/clang/AST/ParentMap.h:46
Parameters
- const clang::Stmt* S
¶bool hasParent(const clang::Stmt* S) const
bool hasParent(const clang::Stmt* S) const
Declared at: clang/include/clang/AST/ParentMap.h:54
Parameters
- const clang::Stmt* S
¶bool isConsumedExpr(clang::Expr* E) const
bool isConsumedExpr(clang::Expr* E) const
Declared at: clang/include/clang/AST/ParentMap.h:56
Parameters
- clang::Expr* E
¶bool isConsumedExpr(const clang::Expr* E) const
bool isConsumedExpr(const clang::Expr* E) const
Declared at: clang/include/clang/AST/ParentMap.h:58
Parameters
- const clang::Expr* E
¶void setParent(const clang::Stmt* S,
const clang::Stmt* Parent)
void setParent(const clang::Stmt* S,
const clang::Stmt* Parent)
Description
Manually sets the parent of \p S to \p Parent. If \p S is already in the map, this method will update the mapping.
Declared at: clang/include/clang/AST/ParentMap.h:34
Parameters
- const clang::Stmt* S
- const clang::Stmt* Parent
¶~ParentMap()
~ParentMap()
Declared at: clang/include/clang/AST/ParentMap.h:24