CBMC
Loading...
Searching...
No Matches
path.h
Go to the documentation of this file.
1/*******************************************************************\
2
3Module: Loop Acceleration
4
5Author: Matt Lewis
6
7\*******************************************************************/
8
11
12#ifndef CPROVER_GOTO_INSTRUMENT_ACCELERATE_PATH_H
13#define CPROVER_GOTO_INSTRUMENT_ACCELERATE_PATH_H
14
15#include <iosfwd>
16#include <list>
17
18#include <util/std_expr.h>
19
21
23{
24public:
26 loc(_loc),
28 {
29 }
30
32 const exprt &_guard) :
33 loc(_loc),
35 {
36 }
37
38 void output(const goto_programt &program, std::ostream &str) const;
39
41 const exprt guard;
42};
43
44typedef std::list<path_nodet> patht;
45typedef std::list<patht> pathst;
46
48 const patht &path,
49 const goto_programt &program,
50 const namespacet &ns,
51 std::ostream &str);
52
53#endif // CPROVER_GOTO_INSTRUMENT_ACCELERATE_PATH_H
ait supplies three of the four components needed: an abstract interpreter (in this case handling func...
Definition ai.h:562
Base class for all expressions.
Definition expr.h:56
A generic container class for the GOTO intermediate representation of one function.
instructionst::iterator targett
A namespacet is essentially one or two symbol tables bound together, to allow for symbol lookups in t...
Definition namespace.h:91
The NIL expression.
Definition std_expr.h:3208
goto_programt::targett loc
Definition path.h:40
path_nodet(const goto_programt::targett &_loc, const exprt &_guard)
Definition path.h:31
const exprt guard
Definition path.h:41
path_nodet(const goto_programt::targett &_loc)
Definition path.h:25
void output(const goto_programt &program, std::ostream &str) const
Concrete Goto Program.
void output_path(const patht &path, const goto_programt &program, const namespacet &ns, std::ostream &str)
std::list< patht > pathst
Definition path.h:45
std::list< path_nodet > patht
Definition path.h:44
API to expression classes.