clang 20.0.0git
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
clang::ento::Environment Class Reference

An immutable map from EnvironemntEntries to SVals. More...

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

Public Types

using iterator = BindingsTy::iterator
 

Public Member Functions

iterator begin () const
 
iterator end () const
 
SVal getSVal (const EnvironmentEntry &E, SValBuilder &svalBuilder) const
 Fetches the current binding of the expression in the Environment.
 
void Profile (llvm::FoldingSetNodeID &ID) const
 Profile - Used to profile the contents of this object for inclusion in a FoldingSet.
 
bool operator== (const Environment &RHS) const
 
void printJson (raw_ostream &Out, const ASTContext &Ctx, const LocationContext *LCtx=nullptr, const char *NL="\n", unsigned int Space=0, bool IsDot=false) const
 

Static Public Member Functions

static void Profile (llvm::FoldingSetNodeID &ID, const Environment *env)
 Profile - Profile the contents of an Environment object for use in a FoldingSet.
 

Friends

class EnvironmentManager
 

Detailed Description

An immutable map from EnvironemntEntries to SVals.

Definition at line 56 of file Environment.h.

Member Typedef Documentation

◆ iterator

using clang::ento::Environment::iterator = BindingsTy::iterator

Definition at line 69 of file Environment.h.

Member Function Documentation

◆ begin()

iterator clang::ento::Environment::begin ( ) const
inline

Definition at line 71 of file Environment.h.

Referenced by clang::ento::EnvironmentManager::removeDeadBindings().

◆ end()

iterator clang::ento::Environment::end ( ) const
inline

Definition at line 72 of file Environment.h.

Referenced by clang::ento::EnvironmentManager::removeDeadBindings().

◆ getSVal()

SVal Environment::getSVal ( const EnvironmentEntry E,
SValBuilder svalBuilder 
) const

Fetches the current binding of the expression in the Environment.

Definition at line 89 of file Environment.cpp.

References clang::ento::SValBuilder::getConstantVal(), clang::ento::EnvironmentEntry::getLocationContext(), clang::ento::EnvironmentEntry::getStmt(), and getSVal().

Referenced by getSVal().

◆ operator==()

bool clang::ento::Environment::operator== ( const Environment RHS) const
inline

Definition at line 90 of file Environment.h.

◆ printJson()

void Environment::printJson ( raw_ostream &  Out,
const ASTContext Ctx,
const LocationContext LCtx = nullptr,
const char *  NL = "\n",
unsigned int  Space = 0,
bool  IsDot = false 
) const

◆ Profile() [1/2]

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

Profile - Used to profile the contents of this object for inclusion in a FoldingSet.

Definition at line 86 of file Environment.h.

References ID, and Profile().

◆ Profile() [2/2]

static void clang::ento::Environment::Profile ( llvm::FoldingSetNodeID &  ID,
const Environment env 
)
inlinestatic

Profile - Profile the contents of an Environment object for use in a FoldingSet.

Definition at line 80 of file Environment.h.

References ID.

Referenced by Profile().

Friends And Related Function Documentation

◆ EnvironmentManager

friend class EnvironmentManager
friend

Definition at line 58 of file Environment.h.


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