cprover
Toggle main menu visibility
Loading...
Searching...
No Matches
structured_trace_util.h
Go to the documentation of this file.
1
/*******************************************************************\
2
3
Author: Diffblue
4
5
\*******************************************************************/
6
10
11
#ifndef CPROVER_GOTO_PROGRAMS_STRUCTURED_TRACE_UTIL_H
12
#define CPROVER_GOTO_PROGRAMS_STRUCTURED_TRACE_UTIL_H
13
14
#include "
goto_program.h
"
15
#include <string>
16
class
goto_trace_stept
;
17
20
enum class
default_step_kindt
21
{
22
LOCATION_ONLY
,
23
LOOP_HEAD
24
};
25
32
default_step_kindt
33
default_step_kind
(
const
goto_programt::instructiont
&instruction);
34
38
std::string
default_step_name
(
const
default_step_kindt
&step_type);
39
40
struct
default_trace_stept
41
{
42
default_step_kindt
kind
;
43
bool
hidden
;
44
unsigned
thread_number
;
45
std::size_t
step_number
;
46
source_locationt
location
;
47
};
48
49
std::optional<default_trace_stept>
default_step
(
50
const
goto_trace_stept
&step,
51
const
source_locationt
&previous_source_location);
52
53
#endif
// CPROVER_GOTO_PROGRAMS_STRUCTURED_TRACE_UTIL_H
goto_programt::instructiont
This class represents an instruction in the GOTO intermediate representation.
Definition
goto_program.h:180
goto_trace_stept
Step of the trace of a GOTO program.
Definition
goto_trace.h:50
source_locationt
Definition
source_location.h:20
goto_program.h
Concrete Goto Program.
default_trace_stept
Definition
structured_trace_util.h:41
default_trace_stept::thread_number
unsigned thread_number
Definition
structured_trace_util.h:44
default_trace_stept::kind
default_step_kindt kind
Definition
structured_trace_util.h:42
default_trace_stept::location
source_locationt location
Definition
structured_trace_util.h:46
default_trace_stept::hidden
bool hidden
Definition
structured_trace_util.h:43
default_trace_stept::step_number
std::size_t step_number
Definition
structured_trace_util.h:45
default_step_kind
default_step_kindt default_step_kind(const goto_programt::instructiont &instruction)
Identify for a given instruction whether it is a loophead or just a location.
Definition
structured_trace_util.cpp:17
default_step_name
std::string default_step_name(const default_step_kindt &step_type)
Turns a default_step_kindt into a string that can be used in the trace.
Definition
structured_trace_util.cpp:27
default_step_kindt
default_step_kindt
There are two kinds of step for location markers - location-only and loop-head (for locations associa...
Definition
structured_trace_util.h:21
default_step_kindt::LOOP_HEAD
@ LOOP_HEAD
Definition
structured_trace_util.h:23
default_step_kindt::LOCATION_ONLY
@ LOCATION_ONLY
Definition
structured_trace_util.h:22
default_step
std::optional< default_trace_stept > default_step(const goto_trace_stept &step, const source_locationt &previous_source_location)
Definition
structured_trace_util.cpp:39
goto-programs
structured_trace_util.h
Generated by
1.17.0