clang 10.0.0git

Public Member Functions | List of all members
clang::ento::RuntimeDefinition Class Reference

Defines the runtime definition of the called function. More...

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

## Public Member Functions
| RuntimeDefinition ()=default
| RuntimeDefinition (const Decl *InD)
| RuntimeDefinition (const Decl *InD, const MemRegion *InR)
const Decl * | getDecl ()
bool | mayHaveOtherDefinitions ()
| Check if the definition we have is precise. More...
const MemRegion * | getDispatchRegion ()
| When other definitions are possible, returns the region whose runtime type determines the method definition. More...

## Detailed Description

Defines the runtime definition of the called function.

Encapsulates the information we have about which Decl will be used when the call is executed on the given path. When dealing with dynamic dispatch, the information is based on DynamicTypeInfo and might not be precise.

Definition at line 101 of file CallEvent.h.

## Constructor & Destructor Documentation

## ◆ RuntimeDefinition() [1/3]

clang::ento::RuntimeDefinition::RuntimeDefinition | ( |  | ) |
| default

## ◆ RuntimeDefinition() [2/3]

clang::ento::RuntimeDefinition::RuntimeDefinition | ( | const Decl * | InD | ) |
| inline

Definition at line 114 of file CallEvent.h.

## ◆ RuntimeDefinition() [3/3]

clang::ento::RuntimeDefinition::RuntimeDefinition | ( | const Decl * | InD,
|  | const MemRegion * | InR
| ) |  |
| inline

Definition at line 115 of file CallEvent.h.

## Member Function Documentation

## ◆ getDecl()

const Decl* clang::ento::RuntimeDefinition::getDecl | ( |  | ) |
| inline

Definition at line 117 of file CallEvent.h.

Referenced by clang::ento::ExprEngine::defaultEvalCall(), and clang::ento::CallEvent::getCalleeAnalysisDeclContext().

## ◆ getDispatchRegion()

const MemRegion* clang::ento::RuntimeDefinition::getDispatchRegion | ( |  | ) |
| inline

When other definitions are possible, returns the region whose runtime type determines the method definition.

Definition at line 126 of file CallEvent.h.

## ◆ mayHaveOtherDefinitions()

bool clang::ento::RuntimeDefinition::mayHaveOtherDefinitions | ( |  | ) |
| inline

Check if the definition we have is precise.

If not, it is possible that the call dispatches to another definition at execution time.

Definition at line 122 of file CallEvent.h.

Referenced by clang::ento::ExprEngine::defaultEvalCall(), and clang::ento::CallEvent::getCalleeAnalysisDeclContext().

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

- include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h