klee
klee::IndexCompatibilityExprVisitor Class Reference

#include <ArrayExprVisitor.h>

Inheritance diagram for klee::IndexCompatibilityExprVisitor:
Collaboration diagram for klee::IndexCompatibilityExprVisitor:

Public Member Functions

 IndexCompatibilityExprVisitor ()=default
 
bool isCompatible ()
 
bool hasInnerReads ()
 
- Public Member Functions inherited from klee::ExprVisitor
ref< Exprvisit (const ref< Expr > &e)
 

Protected Member Functions

Action visitRead (const ReadExpr &) override
 
Action visitURem (const URemExpr &) override
 
Action visitSRem (const SRemExpr &) override
 
Action visitOr (const OrExpr &) 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 Attributes

bool compatible {true}
 
bool inner {false}
 

Detailed Description

Definition at line 52 of file ArrayExprVisitor.h.

Constructor & Destructor Documentation

◆ IndexCompatibilityExprVisitor()

klee::IndexCompatibilityExprVisitor::IndexCompatibilityExprVisitor ( )
default

Member Function Documentation

◆ hasInnerReads()

bool klee::IndexCompatibilityExprVisitor::hasInnerReads ( )
inline

Definition at line 67 of file ArrayExprVisitor.h.

References inner.

Referenced by klee::ConstantArrayExprVisitor::visitConcat(), and klee::ConstantArrayExprVisitor::visitRead().

Here is the caller graph for this function:

◆ isCompatible()

bool klee::IndexCompatibilityExprVisitor::isCompatible ( )
inline

Definition at line 66 of file ArrayExprVisitor.h.

References compatible.

Referenced by klee::ConstantArrayExprVisitor::visitConcat(), and klee::ConstantArrayExprVisitor::visitRead().

Here is the caller graph for this function:

◆ visitOr()

ExprVisitor::Action IndexCompatibilityExprVisitor::visitOr ( const OrExpr &  )
overrideprotectedvirtual

Reimplemented from klee::ExprVisitor.

Definition at line 154 of file ArrayExprVisitor.cpp.

References compatible, and klee::ExprVisitor::Action::skipChildren().

Here is the call graph for this function:

◆ visitRead()

ExprVisitor::Action IndexCompatibilityExprVisitor::visitRead ( const ReadExpr re)
overrideprotectedvirtual

◆ visitSRem()

ExprVisitor::Action IndexCompatibilityExprVisitor::visitSRem ( const SRemExpr &  )
overrideprotectedvirtual

Reimplemented from klee::ExprVisitor.

Definition at line 150 of file ArrayExprVisitor.cpp.

References compatible, and klee::ExprVisitor::Action::skipChildren().

Here is the call graph for this function:

◆ visitURem()

ExprVisitor::Action IndexCompatibilityExprVisitor::visitURem ( const URemExpr &  )
overrideprotectedvirtual

Reimplemented from klee::ExprVisitor.

Definition at line 146 of file ArrayExprVisitor.cpp.

References compatible, and klee::ExprVisitor::Action::skipChildren().

Here is the call graph for this function:

Member Data Documentation

◆ compatible

bool klee::IndexCompatibilityExprVisitor::compatible {true}
private

Definition at line 54 of file ArrayExprVisitor.h.

Referenced by isCompatible(), visitOr(), visitRead(), visitSRem(), and visitURem().

◆ inner

bool klee::IndexCompatibilityExprVisitor::inner {false}
private

Definition at line 55 of file ArrayExprVisitor.h.

Referenced by hasInnerReads(), and visitRead().


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