File tree 1 file changed +7
-0
lines changed
1 file changed +7
-0
lines changed Original file line number Diff line number Diff line change 25
25
26
26
#include " ai_domain.h"
27
27
28
+ // / The basic interface of an abstract interpreter. This should be enough
29
+ // / to create, run and query an abstract interpreter.
28
30
// don't use me -- I am just a base class
29
31
// use ait instead
30
32
class ai_baset
@@ -41,6 +43,7 @@ class ai_baset
41
43
{
42
44
}
43
45
46
+ // / Running the interpreter
44
47
void operator ()(
45
48
const goto_programt &goto_program,
46
49
const namespacet &ns)
@@ -101,6 +104,7 @@ class ai_baset
101
104
return abstract_state_before (std::next (l));
102
105
}
103
106
107
+ // / Resets the domain
104
108
virtual void clear ()
105
109
{
106
110
}
@@ -245,6 +249,9 @@ class ai_baset
245
249
const goto_functionst &goto_functions,
246
250
const namespacet &ns);
247
251
252
+ // Visit performs one step of abstract interpretation from location l
253
+ // Depending on the instruction type it may compute a number of "edges"
254
+ // or applications of the abstract transformer
248
255
// true = found something new
249
256
bool visit (
250
257
locationt l,
You can’t perform that action at this time.
0 commit comments