klee
klee::ConstantArrayExprVisitor Class Reference

#include <ArrayExprVisitor.h>

Inheritance diagram for klee::ConstantArrayExprVisitor:
Collaboration diagram for klee::ConstantArrayExprVisitor:

Public Member Functions

 ConstantArrayExprVisitor (bindings_ty &_arrays)
 
bool isIncompatible ()
 
- Public Member Functions inherited from klee::ExprVisitor
ref< Exprvisit (const ref< Expr > &e)
 

Protected Member Functions

Action visitConcat (const ConcatExpr &) override
 
Action visitRead (const ReadExpr &) override
 
- Protected Member Functions inherited from klee::ExprVisitor
 ExprVisitor (bool _recursive=false)
 
virtual ~ExprVisitor ()
 
virtual Action visitExpr (const Expr &)
 
virtual Action visitExprPost (const Expr &)
 
virtual Action visitNotOptimized (const NotOptimizedExpr &)
 
virtual Action visitRead (const ReadExpr &)
 
virtual Action visitSelect (const SelectExpr &)
 
virtual Action visitConcat (const ConcatExpr &)
 
virtual Action visitExtract (const ExtractExpr &)
 
virtual Action visitZExt (const ZExtExpr &)
 
virtual Action visitSExt (const SExtExpr &)
 
virtual Action visitAdd (const AddExpr &)
 
virtual Action visitSub (const SubExpr &)
 
virtual Action visitMul (const MulExpr &)
 
virtual Action visitUDiv (const UDivExpr &)
 
virtual Action visitSDiv (const SDivExpr &)
 
virtual Action visitURem (const URemExpr &)
 
virtual Action visitSRem (const SRemExpr &)
 
virtual Action visitNot (const NotExpr &)
 
virtual Action visitAnd (const AndExpr &)
 
virtual Action visitOr (const OrExpr &)
 
virtual Action visitXor (const XorExpr &)
 
virtual Action visitShl (const ShlExpr &)
 
virtual Action visitLShr (const LShrExpr &)
 
virtual Action visitAShr (const AShrExpr &)
 
virtual Action visitEq (const EqExpr &)
 
virtual Action visitNe (const NeExpr &)
 
virtual Action visitUlt (const UltExpr &)
 
virtual Action visitUle (const UleExpr &)
 
virtual Action visitUgt (const UgtExpr &)
 
virtual Action visitUge (const UgeExpr &)
 
virtual Action visitSlt (const SltExpr &)
 
virtual Action visitSle (const SleExpr &)
 
virtual Action visitSgt (const SgtExpr &)
 
virtual Action visitSge (const SgeExpr &)
 

Private Types

using bindings_ty = std::map< const Array *, std::vector< ref< Expr > > >
 

Private Attributes

bindings_tyarrays
 
std::unordered_set< unsigned > addedIndexes
 
bool incompatible
 

Detailed Description

Definition at line 34 of file ArrayExprVisitor.h.

Member Typedef Documentation

◆ bindings_ty

using klee::ConstantArrayExprVisitor::bindings_ty = std::map<const Array *, std::vector<ref<Expr> >>
private

Definition at line 36 of file ArrayExprVisitor.h.

Constructor & Destructor Documentation

◆ ConstantArrayExprVisitor()

klee::ConstantArrayExprVisitor::ConstantArrayExprVisitor ( bindings_ty _arrays)
inlineexplicit

Definition at line 47 of file ArrayExprVisitor.h.

Member Function Documentation

◆ isIncompatible()

bool klee::ConstantArrayExprVisitor::isIncompatible ( )
inline

Definition at line 49 of file ArrayExprVisitor.h.

References incompatible.

Referenced by klee::ExprOptimizer::optimizeExpr().

Here is the caller graph for this function:

◆ visitConcat()

◆ visitRead()

Member Data Documentation

◆ addedIndexes

std::unordered_set<unsigned> klee::ConstantArrayExprVisitor::addedIndexes
private

Definition at line 39 of file ArrayExprVisitor.h.

Referenced by visitConcat(), and visitRead().

◆ arrays

bindings_ty& klee::ConstantArrayExprVisitor::arrays
private

Definition at line 37 of file ArrayExprVisitor.h.

Referenced by visitConcat(), and visitRead().

◆ incompatible

bool klee::ConstantArrayExprVisitor::incompatible
private

Definition at line 40 of file ArrayExprVisitor.h.

Referenced by isIncompatible(), visitConcat(), and visitRead().


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