CBMC
show_properties.h
Go to the documentation of this file.
1 /*******************************************************************\
2 
3 Module: Show the properties
4 
5 Author: Daniel Kroening, kroening@kroening.com
6 
7 \*******************************************************************/
8 
11 
12 #ifndef CPROVER_GOTO_PROGRAMS_SHOW_PROPERTIES_H
13 #define CPROVER_GOTO_PROGRAMS_SHOW_PROPERTIES_H
14 
15 #include <util/irep.h>
16 
17 #include <optional>
18 
19 class json_arrayt;
20 class namespacet;
21 class goto_modelt;
22 class goto_programt;
23 class goto_functionst;
24 class source_locationt;
26 
27 #define OPT_SHOW_PROPERTIES \
28  "(show-properties)"
29 
30 #define HELP_SHOW_PROPERTIES \
31  " {y--show-properties} \t show the properties, but don't run analysis\n"
32 
33 void show_properties(
34  const goto_modelt &,
35  ui_message_handlert &ui_message_handler);
36 
37 void show_properties(
38  const namespacet &ns,
39  ui_message_handlert &ui_message_handler,
40  const goto_functionst &goto_functions);
41 
49 std::optional<source_locationt>
50 find_property(const irep_idt &property, const goto_functionst &goto_functions);
51 
58  json_arrayt &json_properties,
59  const namespacet &ns,
60  const irep_idt &identifier,
61  const goto_programt &goto_program);
62 
63 #endif // CPROVER_GOTO_PROGRAMS_SHOW_PROPERTIES_H
dstringt has one field, an unsigned integer no which is an index into a static table of strings.
Definition: dstring.h:38
A collection of goto functions.
A generic container class for the GOTO intermediate representation of one function.
Definition: goto_program.h:73
A namespacet is essentially one or two symbol tables bound together, to allow for symbol lookups in t...
Definition: namespace.h:94
void convert_properties_json(json_arrayt &json_properties, const namespacet &ns, const irep_idt &identifier, const goto_programt &goto_program)
Collects the properties in the goto program into a json_arrayt
void show_properties(const goto_modelt &, ui_message_handlert &ui_message_handler)
std::optional< source_locationt > find_property(const irep_idt &property, const goto_functionst &goto_functions)
Returns a source_locationt that corresponds to the property given by an irep_idt.