class CXXBaseObjectRegion

Declaration

class CXXBaseObjectRegion : public TypedValueRegion { /* full declaration omitted */ };

Description

TypedValueRegion - An abstract class representing regions having a typed value.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:1248

Inherits from: TypedValueRegion

Member Variables

private llvm:: PointerIntPair<const CXXRecordDecl*, 1, bool> Data

Inherited from SubRegion:

protected superRegion

Method Overview

  • private CXXBaseObjectRegion(const clang::CXXRecordDecl * RD, bool IsVirtual, const clang::ento::SubRegion * SReg)
  • public void Profile(llvm::FoldingSetNodeID & ID) const
  • private static void ProfileRegion(llvm::FoldingSetNodeID & ID, const clang::CXXRecordDecl * RD, bool IsVirtual, const clang::ento::MemRegion * SReg)
  • public bool canPrintPrettyAsExpr() const
  • public static bool classof(const clang::ento::MemRegion * region)
  • public void dumpToStream(llvm::raw_ostream & os) const
  • public const clang::CXXRecordDecl * getDecl() const
  • public clang::QualType getValueType() const
  • public bool isVirtual() const
  • public void printPrettyAsExpr(llvm::raw_ostream & os) const

Inherited from TypedValueRegion:

Inherited from TypedRegion:

Inherited from SubRegion:

Inherited from MemRegion:

Inherited from FoldingSetBase::Node:

Methods

CXXBaseObjectRegion(
    const clang::CXXRecordDecl* RD,
    bool IsVirtual,
    const clang::ento::SubRegion* SReg)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:1253

Parameters

const clang::CXXRecordDecl* RD
bool IsVirtual
const clang::ento::SubRegion* SReg

void Profile(llvm::FoldingSetNodeID& ID) const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:1271

Parameters

llvm::FoldingSetNodeID& ID

static void ProfileRegion(
    llvm::FoldingSetNodeID& ID,
    const clang::CXXRecordDecl* RD,
    bool IsVirtual,
    const clang::ento::MemRegion* SReg)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:1259

Parameters

llvm::FoldingSetNodeID& ID
const clang::CXXRecordDecl* RD
bool IsVirtual
const clang::ento::MemRegion* SReg

bool canPrintPrettyAsExpr() const

Description

Returns true if this region's textual representation can be used as part of a larger expression.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:1273

static bool classof(
    const clang::ento::MemRegion* region)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:1277

Parameters

const clang::ento::MemRegion* region

void dumpToStream(llvm::raw_ostream& os) const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:1269

Parameters

llvm::raw_ostream& os

const clang::CXXRecordDecl* getDecl() const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:1264

clang::QualType getValueType() const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:1267

bool isVirtual() const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:1265

void printPrettyAsExpr(
    llvm::raw_ostream& os) const

Description

Print the region as expression. When this region represents a subexpression, the method is for printing an expression containing it.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:1275

Parameters

llvm::raw_ostream& os