CBMC
|
#include "find_symbols.h"
#include "c_types.h"
#include "expr_iterator.h"
#include "range.h"
#include "std_expr.h"
Go to the source code of this file.
Enumerations | |
enum | symbol_kindt { symbol_kindt::F_TYPE, symbol_kindt::F_TYPE_NON_PTR, symbol_kindt::F_EXPR, symbol_kindt::F_EXPR_FREE, symbol_kindt::F_ALL } |
Kinds of symbols to be considered by find_symbols. More... | |
Functions | |
static bool | find_symbols (symbol_kindt, const typet &, std::function< bool(const symbol_exprt &)>, std::unordered_set< irep_idt > &bindings) |
static bool | find_symbols (symbol_kindt kind, const exprt &src, std::function< bool(const symbol_exprt &)> op, std::unordered_set< irep_idt > &bindings) |
static bool | find_symbols (symbol_kindt kind, const typet &type, std::function< bool(const symbol_exprt &)> op) |
static bool | find_symbols (symbol_kindt kind, const exprt &src, std::function< bool(const symbol_exprt &)> op) |
void | find_symbols (const exprt &src, std::set< symbol_exprt > &dest) |
Find sub expressions with id ID_symbol, considering both free and bound variables. More... | |
bool | has_symbol_expr (const exprt &src, const irep_idt &identifier, bool include_bound_symbols) |
Returns true if one of the symbol expressions in src has identifier identifier ; if include_bound_symbols is true, then bindings are included in the search. More... | |
void | find_type_symbols (const exprt &src, find_symbols_sett &dest) |
Collect all type tags contained in src and add them to dest . More... | |
void | find_type_symbols (const typet &src, find_symbols_sett &dest) |
Collect all type tags contained in src and add them to dest . More... | |
void | find_non_pointer_type_symbols (const exprt &src, find_symbols_sett &dest) |
Collect type tags contained in src when the expression of such a type is not a pointer, and add them to dest . More... | |
void | find_non_pointer_type_symbols (const typet &src, find_symbols_sett &dest) |
Collect type tags contained in src when the expression of such a type is not a pointer, and add them to dest . More... | |
void | find_type_and_expr_symbols (const exprt &src, find_symbols_sett &dest) |
Find identifiers of the sub expressions with id ID_symbol, considering both free and bound variables, as well as any type tags. More... | |
void | find_type_and_expr_symbols (const typet &src, find_symbols_sett &dest) |
Find identifiers of the sub expressions with id ID_symbol, considering both free and bound variables, as well as any type tags. More... | |
void | find_symbols (const exprt &src, find_symbols_sett &dest) |
Add to the set dest the sub-expressions of src with id ID_symbol, for both free and bound variables. More... | |
|
strong |
Kinds of symbols to be considered by find_symbols.
Definition at line 17 of file find_symbols.cpp.
void find_non_pointer_type_symbols | ( | const exprt & | src, |
find_symbols_sett & | dest | ||
) |
Collect type tags contained in src
when the expression of such a type is not a pointer, and add them to dest
.
Definition at line 261 of file find_symbols.cpp.
void find_non_pointer_type_symbols | ( | const typet & | src, |
find_symbols_sett & | dest | ||
) |
Collect type tags contained in src
when the expression of such a type is not a pointer, and add them to dest
.
Definition at line 272 of file find_symbols.cpp.
void find_symbols | ( | const exprt & | src, |
find_symbols_sett & | dest | ||
) |
Add to the set dest
the sub-expressions of src
with id ID_symbol, for both free and bound variables.
Definition at line 299 of file find_symbols.cpp.
void find_symbols | ( | const exprt & | src, |
std::set< symbol_exprt > & | dest | ||
) |
Find sub expressions with id ID_symbol, considering both free and bound variables.
Definition at line 224 of file find_symbols.cpp.
|
static |
Definition at line 215 of file find_symbols.cpp.
|
static |
Definition at line 38 of file find_symbols.cpp.
|
static |
Definition at line 206 of file find_symbols.cpp.
|
static |
Definition at line 122 of file find_symbols.cpp.
void find_type_and_expr_symbols | ( | const exprt & | src, |
find_symbols_sett & | dest | ||
) |
Find identifiers of the sub expressions with id ID_symbol, considering both free and bound variables, as well as any type tags.
Definition at line 283 of file find_symbols.cpp.
void find_type_and_expr_symbols | ( | const typet & | src, |
find_symbols_sett & | dest | ||
) |
Find identifiers of the sub expressions with id ID_symbol, considering both free and bound variables, as well as any type tags.
Definition at line 291 of file find_symbols.cpp.
void find_type_symbols | ( | const exprt & | src, |
find_symbols_sett & | dest | ||
) |
Collect all type tags contained in src
and add them to dest
.
Definition at line 245 of file find_symbols.cpp.
void find_type_symbols | ( | const typet & | src, |
find_symbols_sett & | dest | ||
) |
Collect all type tags contained in src
and add them to dest
.
Definition at line 253 of file find_symbols.cpp.
Returns true if one of the symbol expressions in src
has identifier identifier
; if include_bound_symbols
is true, then bindings are included in the search.
Definition at line 232 of file find_symbols.cpp.