clang  6.0.0svn
Public Member Functions | List of all members
clang::ento::DynamicTypeInfo Class Reference

Stores the currently inferred strictest bound on the runtime type of a region in a given state along the analysis path. More...

#include "clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeInfo.h"

Public Member Functions

 DynamicTypeInfo ()
 
 DynamicTypeInfo (QualType WithType, bool CanBeSub=true)
 
bool isValid () const
 Return false if no dynamic type info is available. More...
 
QualType getType () const
 Returns the currently inferred upper bound on the runtime type. More...
 
bool canBeASubClass () const
 Returns false if the type information is precise (the type T is the only type in the lattice), true otherwise. More...
 
void Profile (llvm::FoldingSetNodeID &ID) const
 
bool operator== (const DynamicTypeInfo &X) const
 

Detailed Description

Stores the currently inferred strictest bound on the runtime type of a region in a given state along the analysis path.

Definition at line 19 of file DynamicTypeInfo.h.

Constructor & Destructor Documentation

◆ DynamicTypeInfo() [1/2]

clang::ento::DynamicTypeInfo::DynamicTypeInfo ( )
inline

Definition at line 26 of file DynamicTypeInfo.h.

◆ DynamicTypeInfo() [2/2]

clang::ento::DynamicTypeInfo::DynamicTypeInfo ( QualType  WithType,
bool  CanBeSub = true 
)
inline

Definition at line 27 of file DynamicTypeInfo.h.

Member Function Documentation

◆ canBeASubClass()

bool clang::ento::DynamicTypeInfo::canBeASubClass ( ) const
inline

Returns false if the type information is precise (the type T is the only type in the lattice), true otherwise.

Definition at line 38 of file DynamicTypeInfo.h.

Referenced by clang::CXXInstanceCall::getRuntimeDefinition(), and hasDefinition().

◆ getType()

QualType clang::ento::DynamicTypeInfo::getType ( ) const
inline

Returns the currently inferred upper bound on the runtime type.

Definition at line 34 of file DynamicTypeInfo.h.

Referenced by clang::CXXInstanceCall::getRuntimeDefinition(), and hasDefinition().

◆ isValid()

bool clang::ento::DynamicTypeInfo::isValid ( ) const
inline

Return false if no dynamic type info is available.

Definition at line 31 of file DynamicTypeInfo.h.

References clang::QualType::isNull().

Referenced by clang::CXXInstanceCall::getRuntimeDefinition(), and hasDefinition().

◆ operator==()

bool clang::ento::DynamicTypeInfo::operator== ( const DynamicTypeInfo X) const
inline

Definition at line 44 of file DynamicTypeInfo.h.

◆ Profile()

void clang::ento::DynamicTypeInfo::Profile ( llvm::FoldingSetNodeID &  ID) const
inline

Definition at line 40 of file DynamicTypeInfo.h.


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