clang API Documentation

Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Friends
clang::ento::StringRegion Class Reference

StringRegion - Region associated with a StringLiteral. More...

#include <MemRegion.h>

Inheritance diagram for clang::ento::StringRegion:
Inheritance graph
[legend]
Collaboration diagram for clang::ento::StringRegion:
Collaboration graph
[legend]

List of all members.

Public Member Functions

const StringLiteralgetStringLiteral () const
QualType getValueType () const override
DefinedOrUnknownSVal getExtent (SValBuilder &svalBuilder) const override
 getExtent - Returns the size of the region in bytes.
bool isBoundable () const override
void Profile (llvm::FoldingSetNodeID &ID) const override
void dumpToStream (raw_ostream &os) const override

Static Public Member Functions

static bool classof (const MemRegion *R)

Protected Member Functions

 StringRegion (const StringLiteral *str, const MemRegion *sreg)

Static Protected Member Functions

static void ProfileRegion (llvm::FoldingSetNodeID &ID, const StringLiteral *Str, const MemRegion *superRegion)

Friends

class MemRegionManager

Detailed Description

StringRegion - Region associated with a StringLiteral.

Definition at line 741 of file MemRegion.h.


Constructor & Destructor Documentation

clang::ento::StringRegion::StringRegion ( const StringLiteral str,
const MemRegion sreg 
) [inline, protected]

Definition at line 746 of file MemRegion.h.


Member Function Documentation

static bool clang::ento::StringRegion::classof ( const MemRegion R) [inline, static]
void StringRegion::dumpToStream ( raw_ostream &  os) const [override, virtual]

Reimplemented from clang::ento::MemRegion.

Definition at line 510 of file MemRegion.cpp.

References clang::ento::MemRegion::getContext(), and clang::Stmt::printPretty().

DefinedOrUnknownSVal StringRegion::getExtent ( SValBuilder svalBuilder) const [override, virtual]

getExtent - Returns the size of the region in bytes.

Reimplemented from clang::ento::TypedValueRegion.

Definition at line 224 of file MemRegion.cpp.

References clang::ento::SValBuilder::getArrayIndexType(), getStringLiteral(), and clang::ento::SValBuilder::makeIntVal().

Definition at line 755 of file MemRegion.h.

Referenced by getExtent().

QualType clang::ento::StringRegion::getValueType ( ) const [inline, override, virtual]

Implements clang::ento::TypedValueRegion.

Definition at line 757 of file MemRegion.h.

References clang::Expr::getType().

bool clang::ento::StringRegion::isBoundable ( ) const [inline, override, virtual]

Reimplemented from clang::ento::TypedRegion.

Definition at line 763 of file MemRegion.h.

void clang::ento::StringRegion::Profile ( llvm::FoldingSetNodeID &  ID) const [inline, override, virtual]

Implements clang::ento::MemRegion.

Definition at line 765 of file MemRegion.h.

References ProfileRegion(), and clang::ento::SubRegion::superRegion.

void StringRegion::ProfileRegion ( llvm::FoldingSetNodeID &  ID,
const StringLiteral Str,
const MemRegion superRegion 
) [static, protected]

Definition at line 262 of file MemRegion.cpp.

References clang::ento::MemRegion::StringRegionKind.

Referenced by Profile().


Friends And Related Function Documentation

friend class MemRegionManager [friend]

Reimplemented from clang::ento::MemRegion.

Definition at line 742 of file MemRegion.h.


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