class EnvironmentEntry

Declaration

class EnvironmentEntry : public std::pair { /* full declaration omitted */ };

Description

An entry in the environment consists of a Stmt and an LocationContext. This allows the environment to manage context-sensitive bindings, which is essentially for modeling recursive function analysis, among other things.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h:35

Inherits from: std::pair

Method Overview

  • public EnvironmentEntry(const clang::Stmt * s, const clang::LocationContext * L)
  • public static void Profile(llvm::FoldingSetNodeID & ID, const clang::ento::EnvironmentEntry & E)
  • public void Profile(llvm::FoldingSetNodeID & ID) const
  • public const clang::LocationContext * getLocationContext() const
  • public const clang::Stmt * getStmt() const

Methods

EnvironmentEntry(const clang::Stmt* s,
                 const clang::LocationContext* L)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h:38

Parameters

const clang::Stmt* s
const clang::LocationContext* L

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

Description

Profile an EnvironmentEntry for inclusion in a FoldingSet.

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h:44

Parameters

llvm::FoldingSetNodeID& ID
const clang::ento::EnvironmentEntry& E

void Profile(llvm::FoldingSetNodeID& ID) const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h:50

Parameters

llvm::FoldingSetNodeID& ID

const clang::LocationContext* getLocationContext()
    const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h:41

const clang::Stmt* getStmt() const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h:40