klee
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ExprUtil.h
Go to the documentation of this file.
1 //===-- ExprUtil.h ----------------------------------------------*- C++ -*-===//
2 //
3 // The KLEE Symbolic Virtual Machine
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 
10 #ifndef KLEE_EXPRUTIL_H
11 #define KLEE_EXPRUTIL_H
12 
13 #include <vector>
14 
15 namespace klee {
16  class Array;
17  class Expr;
18  class ReadExpr;
19  template<typename T> class ref;
20 
25  void findReads(ref<Expr> e,
26  bool visitUpdates,
27  std::vector< ref<ReadExpr> > &result);
28 
31  void findSymbolicObjects(ref<Expr> e,
32  std::vector<const Array*> &results);
33 
36  template<typename InputIterator>
37  void findSymbolicObjects(InputIterator begin,
38  InputIterator end,
39  std::vector<const Array*> &results);
40 
41 }
42 
43 #endif
#define Expr
Definition: STPBuilder.h:19
void findReads(ref< Expr > e, bool visitUpdates, std::vector< ref< ReadExpr > > &result)
Definition: ExprUtil.cpp:21
void findSymbolicObjects(ref< Expr > e, std::vector< const Array * > &results)
Definition: ExprUtil.cpp:118