klee::ExprVisitor Class Reference

#include <ExprVisitor.h>

Inheritance diagram for klee::ExprVisitor:

Inheritance graph
[legend]
Collaboration diagram for klee::ExprVisitor:

Collaboration graph
[legend]

List of all members.

Classes

class  Action

Public Member Functions

ref< Exprvisit (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< ExprvisitActual (const ref< Expr > &e)

Private Attributes

visited_ty visited
bool recursive


Detailed Description

Definition at line 16 of file ExprVisitor.h.


Member Typedef Documentation

Definition at line 83 of file ExprVisitor.h.


Constructor & Destructor Documentation

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.


Member Function Documentation

ref< Expr > ExprVisitor::visit ( const ref< Expr > &  e  ) 

ref< Expr > ExprVisitor::visitActual ( const ref< Expr > &  e  )  [private]

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:


Member Data Documentation

Definition at line 85 of file ExprVisitor.h.

Referenced by visitActual().

Definition at line 84 of file ExprVisitor.h.

Referenced by visit().


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

Generated on Fri Jun 5 03:33:38 2009 for klee by  doxygen 1.5.8