class SwitchNodeBuilder

Declaration

class SwitchNodeBuilder { /* full declaration omitted */ };

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h:532

Member Variables

private clang::ento::CoreEngine& Eng
private const clang::CFGBlock* Src
private const clang::Expr* Condition
private clang::ento::ExplodedNode* Pred

Method Overview

  • public SwitchNodeBuilder(clang::ento::ExplodedNode * pred, const clang::CFGBlock * src, const clang::Expr * condition, clang::ento::CoreEngine * eng)
  • public clang::ento::SwitchNodeBuilder::iterator begin()
  • public clang::ento::SwitchNodeBuilder::iterator end()
  • public clang::ento::ExplodedNode * generateCaseStmtNode(const clang::ento::SwitchNodeBuilder::iterator & I, clang::ento::ProgramStateRef State)
  • public clang::ento::ExplodedNode * generateDefaultCaseNode(clang::ento::ProgramStateRef State, bool isSink = false)
  • public const clang::Expr * getCondition() const
  • public const clang::LocationContext * getLocationContext() const
  • public clang::ento::ProgramStateRef getState() const
  • public const clang::SwitchStmt * getSwitch() const

Methods

SwitchNodeBuilder(clang::ento::ExplodedNode* pred,
                  const clang::CFGBlock* src,
                  const clang::Expr* condition,
                  clang::ento::CoreEngine* eng)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h:539

Parameters

clang::ento::ExplodedNode* pred
const clang::CFGBlock* src
const clang::Expr* condition
clang::ento::CoreEngine* eng

clang::ento::SwitchNodeBuilder::iterator begin()

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h:564

clang::ento::SwitchNodeBuilder::iterator end()

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h:565

clang::ento::ExplodedNode* generateCaseStmtNode(
    const clang::ento::SwitchNodeBuilder::
        iterator& I,
    clang::ento::ProgramStateRef State)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h:571

Parameters

const clang::ento::SwitchNodeBuilder::iterator& I
clang::ento::ProgramStateRef State

clang::ento::ExplodedNode*
generateDefaultCaseNode(
    clang::ento::ProgramStateRef State,
    bool isSink = false)

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h:574

Parameters

clang::ento::ProgramStateRef State
bool isSink = false

const clang::Expr* getCondition() const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h:577

const clang::LocationContext* getLocationContext()
    const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h:581

clang::ento::ProgramStateRef getState() const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h:579

const clang::SwitchStmt* getSwitch() const

Declared at: clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h:567