#include "clang/AST/ParentMap.h"
#include "clang/AST/Decl.h"
#include "clang/AST/Expr.h"
#include "clang/AST/ExprCXX.h"
#include "clang/AST/StmtObjC.h"
#include "llvm/ADT/DenseMap.h"
usingnamespaceclang;
MapTy;
enum OpaqueValueMode { … };
static void BuildParentMap(MapTy& M, Stmt* S,
OpaqueValueMode OVMode = OV_Transparent) { … }
ParentMap::ParentMap(Stmt *S) : … { … }
ParentMap::~ParentMap() { … }
void ParentMap::addStmt(Stmt* S) { … }
void ParentMap::setParent(const Stmt *S, const Stmt *Parent) { … }
Stmt* ParentMap::getParent(Stmt* S) const { … }
Stmt *ParentMap::getParentIgnoreParens(Stmt *S) const { … }
Stmt *ParentMap::getParentIgnoreParenCasts(Stmt *S) const { … }
Stmt *ParentMap::getParentIgnoreParenImpCasts(Stmt *S) const { … }
Stmt *ParentMap::getOuterParenParent(Stmt *S) const { … }
bool ParentMap::isConsumedExpr(Expr* E) const { … }