|
CBMC
|
#include <c_nondet_symbol_factory.h>
Collaboration diagram for symbol_factoryt:Public Types | |
| typedef std::set< irep_idt > | recursion_sett |
Public Member Functions | |
| symbol_factoryt (symbol_table_baset &_symbol_table, const source_locationt &loc, const irep_idt &name_prefix, const c_object_factory_parameterst &object_factory_params, const lifetimet lifetime) | |
| void | gen_nondet_init (code_blockt &assignments, const exprt &expr, const std::size_t depth=0, recursion_sett recursion_set=recursion_sett(), const bool assign_const=true) |
| Creates a nondet for expr, including calling itself recursively to make appropriate symbols to point to if expr is a pointer. | |
| void | add_created_symbol (const symbolt &symbol) |
| void | declare_created_symbols (code_blockt &init_code) |
| void | mark_created_symbols_as_input (code_blockt &init_code) |
Private Member Functions | |
| void | gen_nondet_array_init (code_blockt &assignments, const exprt &expr, std::size_t depth, const recursion_sett &recursion_set) |
| Generate initialisation code for each array element. | |
Definition at line 21 of file c_nondet_symbol_factory.h.
| typedef std::set<irep_idt> symbol_factoryt::recursion_sett |
Definition at line 33 of file c_nondet_symbol_factory.h.
|
inline |
Definition at line 35 of file c_nondet_symbol_factory.h.
Definition at line 57 of file c_nondet_symbol_factory.h.
|
inline |
Definition at line 62 of file c_nondet_symbol_factory.h.
|
private |
Generate initialisation code for each array element.
| assignments | The code block to add code to |
| expr | An expression of array type |
| depth | The struct recursion depth |
| recursion_set | The struct recursion set |
Definition at line 167 of file c_nondet_symbol_factory.cpp.
| void symbol_factoryt::gen_nondet_init | ( | code_blockt & | assignments, |
| const exprt & | expr, | ||
| const std::size_t | depth = 0, |
||
| recursion_sett | recursion_set = recursion_sett(), |
||
| const bool | assign_const = true |
||
| ) |
Creates a nondet for expr, including calling itself recursively to make appropriate symbols to point to if expr is a pointer.
| assignments | The code block to add code to |
| expr | The expression which we are generating a non-determinate value for |
| depth | number of pointers followed so far during initialisation |
| recursion_set | names of structs seen so far on current pointer chain |
| assign_const | Indicates whether const objects should be nondet initialized |
Definition at line 37 of file c_nondet_symbol_factory.cpp.
|
inline |
Definition at line 67 of file c_nondet_symbol_factory.h.
|
private |
Definition at line 28 of file c_nondet_symbol_factory.h.
Definition at line 30 of file c_nondet_symbol_factory.h.
|
private |
Definition at line 24 of file c_nondet_symbol_factory.h.
|
private |
Definition at line 25 of file c_nondet_symbol_factory.h.
|
private |
Definition at line 26 of file c_nondet_symbol_factory.h.
|
private |
Definition at line 23 of file c_nondet_symbol_factory.h.