class ParentMap

Declaration

class ParentMap { /* full declaration omitted */ };

Declared at: clang/include/clang/AST/ParentMap.h:20

Member Variables

private void* Impl

Method Overview

Methods

ParentMap(clang::Stmt* ASTRoot)

Declared at: clang/include/clang/AST/ParentMap.h:23

Parameters

clang::Stmt* ASTRoot

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

Declared at: clang/include/clang/AST/ParentMap.h:40

Parameters

clang::Stmt*

clang::Stmt* getParent(clang::Stmt*) const

Declared at: clang/include/clang/AST/ParentMap.h:36

Parameters

clang::Stmt*

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

Declared at: clang/include/clang/AST/ParentMap.h:38

Parameters

clang::Stmt*

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

Declared at: clang/include/clang/AST/ParentMap.h:39

Parameters

clang::Stmt*

clang::Stmt* getParentIgnoreParens(
    clang::Stmt*) const

Declared at: clang/include/clang/AST/ParentMap.h:37

Parameters

clang::Stmt*

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

Declared at: clang/include/clang/AST/ParentMap.h:54

Parameters

const clang::Stmt* S

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

Declared at: clang/include/clang/AST/ParentMap.h:58

Parameters

const clang::Expr* E

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()

Declared at: clang/include/clang/AST/ParentMap.h:24