clang 10.0.0git

Public Member Functions | Static Public Member Functions | Friends | List of all members
clang::ento::ObjCIvarRegion Class Reference

`#include "clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h"`

Inheritance diagram for clang::ento::ObjCIvarRegion:
[legend]
Collaboration diagram for clang::ento::ObjCIvarRegion:
[legend]

## Public Member Functions
const ObjCIvarDecl * | getDecl () const
QualType | getValueType () const override
bool | canPrintPrettyAsExpr () const override
| Returns true if this region's textual representation can be used as part of a larger expression. More...
void | printPrettyAsExpr (raw_ostream &os) const override
| Print the region as expression. More...
void | dumpToStream (raw_ostream &os) const override
Public Member Functions inherited from clang::ento::DeclRegion
const ValueDecl * | getDecl () const
void | Profile (llvm::FoldingSetNodeID &ID) const override
Public Member Functions inherited from clang::ento::TypedValueRegion
QualType | getLocationType () const override
QualType | getDesugaredValueType (ASTContext &Context) const
DefinedOrUnknownSVal | getExtent (SValBuilder &svalBuilder) const override
| getExtent - Returns the size of the region in bytes. More...
Public Member Functions inherited from clang::ento::TypedRegion
QualType | getDesugaredLocationType (ASTContext &Context) const
bool | isBoundable () const override
Public Member Functions inherited from clang::ento::SubRegion
const MemRegion * | getSuperRegion () const
MemRegionManager * | getMemRegionManager () const override
bool | isSubRegionOf (const MemRegion *R) const override
| Check if the region is a subregion of the given region. More...
Public Member Functions inherited from clang::ento::MemRegion
ASTContext & | getContext () const
const MemSpaceRegion * | getMemorySpace () const
const MemRegion * | getBaseRegion () const
const MemRegion * | getMostDerivedObjectRegion () const
| Recursively retrieve the region of the most derived class instance of regions of C++ base class instances. More...
const MemRegion * | StripCasts (bool StripBaseAndDerivedCasts=true) const
const SymbolicRegion * | getSymbolicBase () const
| If this is a symbolic region, returns the region. More...
bool | hasGlobalsOrParametersStorage () const
bool | hasStackStorage () const
bool | hasStackNonParametersStorage () const
bool | hasStackParametersStorage () const
RegionOffset | getAsOffset () const
| Compute the offset within the top level memory object. More...
std::string | getString () const
| Get a string representation of a region for debug use. More...
void | dump () const
virtual bool | canPrintPretty () const
| Returns true if this region can be printed in a user-friendly way. More...
virtual void | printPretty (raw_ostream &os) const
| Print the region for use in diagnostics. More...
Kind | getKind () const
template<typename RegionTy >
const RegionTy * | getAs () const
template<typename RegionTy >
const RegionTy * | castAs () const
std::string | getDescriptiveName (bool UseQuotes=true) const
| Get descriptive name for memory region. More...
SourceRange | sourceRange () const
| Retrieve source range from memory region. More...

## Static Public Member Functions
static bool | classof (const MemRegion *R)
Static Public Member Functions inherited from clang::ento::DeclRegion
static bool | classof (const MemRegion *R)
Static Public Member Functions inherited from clang::ento::TypedValueRegion
static bool | classof (const MemRegion *R)
Static Public Member Functions inherited from clang::ento::TypedRegion
static bool | classof (const MemRegion *R)
Static Public Member Functions inherited from clang::ento::SubRegion
static bool | classof (const MemRegion *R)

## Friends
class | MemRegionManager

## Additional Inherited Members
Public Types inherited from clang::ento::MemRegion
enum | Kind
Protected Member Functions inherited from clang::ento::DeclRegion
| DeclRegion (const ValueDecl *d, const MemRegion *sReg, Kind k)
Protected Member Functions inherited from clang::ento::TypedValueRegion
| TypedValueRegion (const MemRegion *sReg, Kind k)
Protected Member Functions inherited from clang::ento::TypedRegion
| TypedRegion (const MemRegion *sReg, Kind k)
Protected Member Functions inherited from clang::ento::SubRegion
| SubRegion (const MemRegion *sReg, Kind k)
Protected Member Functions inherited from clang::ento::MemRegion
| MemRegion (Kind k)
virtual | ~MemRegion ()
Static Protected Member Functions inherited from clang::ento::DeclRegion
static void | ProfileRegion (llvm::FoldingSetNodeID &ID, const Decl *D, const MemRegion *superRegion, Kind k)
Protected Attributes inherited from clang::ento::DeclRegion
const ValueDecl * | D
Protected Attributes inherited from clang::ento::SubRegion
const MemRegion * | superRegion

## Detailed Description

Definition at line 1038 of file MemRegion.h.

## Member Function Documentation

## ◆ canPrintPrettyAsExpr()

bool ObjCIvarRegion::canPrintPrettyAsExpr | ( |  | ) | const
| override virtual

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

Reimplemented from clang::ento::MemRegion.

Definition at line 611 of file MemRegion.cpp.

## ◆ classof()

static bool clang::ento::ObjCIvarRegion::classof | ( | const MemRegion * | R | ) |
| inline static

Definition at line 1055 of file MemRegion.h.

References clang::ento::MemRegion::getKind().

## ◆ dumpToStream()

void ObjCIvarRegion::dumpToStream | ( | raw_ostream & | os | ) | const
| override virtual

Reimplemented from clang::ento::MemRegion.

Definition at line 512 of file MemRegion.cpp.

## ◆ getDecl()

const ObjCIvarDecl * ObjCIvarRegion::getDecl | ( |  | ) | const

Definition at line 215 of file MemRegion.cpp.

Referenced by clang::ento::SValExplainer::VisitObjCIvarRegion().

## ◆ getValueType()

QualType ObjCIvarRegion::getValueType | ( |  | ) | const
| override virtual

Implements clang::ento::TypedValueRegion.

Definition at line 219 of file MemRegion.cpp.

## ◆ printPrettyAsExpr()

void ObjCIvarRegion::printPrettyAsExpr | ( | raw_ostream & | os | ) | const
| override virtual

Print the region as expression.

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

Reimplemented from clang::ento::MemRegion.

Definition at line 615 of file MemRegion.cpp.

## Friends And Related Function Documentation

## ◆ MemRegionManager

friend class MemRegionManager
| friend

Definition at line 1039 of file MemRegion.h.

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

- include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
- lib/StaticAnalyzer/Core/MemRegion.cpp