#include <ExprVisitor.h>


Classes | |
| class | Action |
Public Member Functions | |
| ref< Expr > | visit (const ref< Expr > &e) |
Protected Member Functions | |
| 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 | 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 | |
| typedef ExprHashMap< ref< Expr > > | visited_ty |
Private Member Functions | |
| ref< Expr > | visitActual (const ref< Expr > &e) |
Private Attributes | |
| visited_ty | visited |
| bool | recursive |
Definition at line 16 of file ExprVisitor.h.
typedef ExprHashMap< ref<Expr> > klee::ExprVisitor::visited_ty [private] |
Definition at line 83 of file ExprVisitor.h.
| klee::ExprVisitor::ExprVisitor | ( | bool | _recursive = false |
) | [inline, explicit, protected] |
Definition at line 45 of file ExprVisitor.h.
| virtual klee::ExprVisitor::~ExprVisitor | ( | ) | [inline, protected, virtual] |
Definition at line 46 of file ExprVisitor.h.
Definition at line 24 of file ExprVisitor.cpp.
References visitActual(), and visited.
Referenced by ObjectFinder::addUpdates(), FastCexSolver::computeInitialValues(), FastCexSolver::computeTruth(), FastCexSolver::computeValue(), klee::ExprEvaluator::evalRead(), klee::Assignment::evaluate(), CexData::exprMustBeValue(), klee::findSymbolicObjects(), klee::ExprEvaluator::protectedDivOperation(), klee::ConstraintManager::rewriteConstraints(), klee::Assignment::satisfies(), visitActual(), klee::SymbolicObjectFinder::visitRead(), and klee::ExprEvaluator::visitRead().


Definition at line 40 of file ExprVisitor.cpp.
References klee::Expr::Add, klee::Expr::And, klee::ExprVisitor::ExprVisitor::Action::argument, klee::Expr::AShr, klee::ExprVisitor::ExprVisitor::Action::ChangeTo, klee::Expr::Concat, klee::Expr::Constant, klee::ExprVisitor::ExprVisitor::Action::DoChildren, klee::Expr::Eq, klee::Expr::Extract, klee::ref< T >::get(), klee::Expr::getKid(), klee::Expr::getKind(), klee::Expr::getNumKids(), klee::ExprVisitor::ExprVisitor::Action::kind, klee::Expr::LShr, klee::Expr::Mul, klee::Expr::Ne, klee::Expr::NotOptimized, klee::Expr::Or, klee::Expr::Read, klee::Expr::rebuild(), recursive, klee::Expr::SDiv, klee::Expr::Select, klee::Expr::SExt, klee::Expr::Sge, klee::Expr::Sgt, klee::Expr::Shl, klee::ExprVisitor::ExprVisitor::Action::SkipChildren, klee::Expr::Sle, klee::Expr::Slt, klee::Expr::SRem, klee::Expr::Sub, klee::Expr::UDiv, klee::Expr::Uge, klee::Expr::Ugt, klee::Expr::Ule, klee::Expr::Ult, klee::Expr::URem, visit(), visitAdd(), visitAnd(), visitAShr(), visitConcat(), visitEq(), visitExpr(), visitExprPost(), visitExtract(), visitLShr(), visitMul(), visitNe(), visitNotOptimized(), visitOr(), visitRead(), visitSDiv(), visitSelect(), visitSExt(), visitSge(), visitSgt(), visitShl(), visitSle(), visitSlt(), visitSRem(), visitSub(), visitUDiv(), visitUge(), visitUgt(), visitUle(), visitUlt(), visitURem(), visitXor(), visitZExt(), klee::Expr::Xor, and klee::Expr::ZExt.
Referenced by visit().


| ExprVisitor::Action ExprVisitor::visitAdd | ( | const AddExpr & | ) | [protected, virtual] |
Definition at line 162 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitAnd | ( | const AndExpr & | ) | [protected, virtual] |
Definition at line 190 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitAShr | ( | const AShrExpr & | ) | [protected, virtual] |
Definition at line 210 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitConcat | ( | const ConcatExpr & | ) | [protected, virtual] |
Definition at line 146 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitEq | ( | const EqExpr & | ) | [protected, virtual] |
Definition at line 214 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitExpr | ( | const Expr & | ) | [protected, virtual] |
Reimplemented in ExprReplaceVisitor.
Definition at line 126 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitExprPost | ( | const Expr & | ) | [protected, virtual] |
Reimplemented in ExprReplaceVisitor, and ExprReplaceVisitor2.
Definition at line 130 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::skipChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitExtract | ( | const ExtractExpr & | ) | [protected, virtual] |
Definition at line 150 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitLShr | ( | const LShrExpr & | ) | [protected, virtual] |
Definition at line 206 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitMul | ( | const MulExpr & | ) | [protected, virtual] |
Definition at line 170 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitNe | ( | const NeExpr & | ) | [protected, virtual] |
Definition at line 218 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitNotOptimized | ( | const NotOptimizedExpr & | ) | [protected, virtual] |
Definition at line 134 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitOr | ( | const OrExpr & | ) | [protected, virtual] |
Definition at line 194 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitRead | ( | const ReadExpr & | ) | [protected, virtual] |
Reimplemented in klee::SymbolicObjectFinder, ObjectFinder, and klee::ExprEvaluator.
Definition at line 138 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitSDiv | ( | const SDivExpr & | ) | [protected, virtual] |
Reimplemented in klee::ExprEvaluator.
Definition at line 178 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitSelect | ( | const SelectExpr & | ) | [protected, virtual] |
Definition at line 142 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitSExt | ( | const SExtExpr & | ) | [protected, virtual] |
Definition at line 158 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitSge | ( | const SgeExpr & | ) | [protected, virtual] |
Definition at line 250 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitSgt | ( | const SgtExpr & | ) | [protected, virtual] |
Definition at line 246 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitShl | ( | const ShlExpr & | ) | [protected, virtual] |
Definition at line 202 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitSle | ( | const SleExpr & | ) | [protected, virtual] |
Definition at line 242 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitSlt | ( | const SltExpr & | ) | [protected, virtual] |
Definition at line 238 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitSRem | ( | const SRemExpr & | ) | [protected, virtual] |
Reimplemented in klee::ExprEvaluator.
Definition at line 186 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitSub | ( | const SubExpr & | ) | [protected, virtual] |
Definition at line 166 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitUDiv | ( | const UDivExpr & | ) | [protected, virtual] |
Reimplemented in klee::ExprEvaluator.
Definition at line 174 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitUge | ( | const UgeExpr & | ) | [protected, virtual] |
Definition at line 234 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitUgt | ( | const UgtExpr & | ) | [protected, virtual] |
Definition at line 230 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitUle | ( | const UleExpr & | ) | [protected, virtual] |
Definition at line 226 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitUlt | ( | const UltExpr & | ) | [protected, virtual] |
Definition at line 222 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitURem | ( | const URemExpr & | ) | [protected, virtual] |
Reimplemented in klee::ExprEvaluator.
Definition at line 182 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitXor | ( | const XorExpr & | ) | [protected, virtual] |
Definition at line 198 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


| ExprVisitor::Action ExprVisitor::visitZExt | ( | const ZExtExpr & | ) | [protected, virtual] |
Definition at line 154 of file ExprVisitor.cpp.
References klee::ExprVisitor::ExprVisitor::Action::doChildren().
Referenced by visitActual().


bool klee::ExprVisitor::recursive [private] |
visited_ty klee::ExprVisitor::visited [private] |
1.5.8