clang 23.0.0git
clang::ento::EnvironmentEntry Class Reference

An entry in the environment consists of a Stmt and an StackFrame. More...

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

Inheritance diagram for clang::ento::EnvironmentEntry:
[legend]

Public Member Functions

 EnvironmentEntry (const Expr *E, const StackFrame *SF)
const ExprgetExpr () const
const StackFramegetStackFrame () const
void Profile (llvm::FoldingSetNodeID &ID) const

Static Public Member Functions

static void Profile (llvm::FoldingSetNodeID &ID, const EnvironmentEntry &E)
 Profile an EnvironmentEntry for inclusion in a FoldingSet.

Detailed Description

An entry in the environment consists of a Stmt and an StackFrame.

This allows the environment to manage context-sensitive bindings, which is essentially for modeling recursive function analysis, among other things.

Definition at line 35 of file Environment.h.

Constructor & Destructor Documentation

◆ EnvironmentEntry()

EnvironmentEntry::EnvironmentEntry ( const Expr * E,
const StackFrame * SF )

Definition at line 66 of file Environment.cpp.

References ignoreTransparentExprs().

Referenced by Profile().

Member Function Documentation

◆ getExpr()

const Expr * clang::ento::EnvironmentEntry::getExpr ( ) const
inline

◆ getStackFrame()

const StackFrame * clang::ento::EnvironmentEntry::getStackFrame ( ) const
inline

◆ Profile() [1/2]

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

Definition at line 49 of file Environment.h.

References Profile().

◆ Profile() [2/2]

void clang::ento::EnvironmentEntry::Profile ( llvm::FoldingSetNodeID & ID,
const EnvironmentEntry & E )
inlinestatic

Profile an EnvironmentEntry for inclusion in a FoldingSet.

Definition at line 43 of file Environment.h.

References EnvironmentEntry(), getExpr(), and getStackFrame().

Referenced by Profile().


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