10 #ifndef CPROVER_UTIL_RENAME_SYMBOL_H
11 #define CPROVER_UTIL_RENAME_SYMBOL_H
18 #include <unordered_map>
28 typedef std::unordered_map<irep_idt, irep_idt>
expr_mapt;
29 typedef std::unordered_map<irep_idt, irep_idt>
type_mapt;
34 expr_map.insert(std::pair<irep_idt, irep_idt>(old_id, new_id));
43 type_map.insert(std::pair<irep_idt, irep_idt>(old_id, new_id));
dstringt has one field, an unsigned integer no which is an index into a static table of strings.
Base class for all expressions.
void insert(const class symbol_exprt &old_expr, const class symbol_exprt &new_expr)
virtual ~rename_symbolt()
bool operator()(exprt &dest) const
Rename symbols in dest.
void insert_type(const irep_idt &old_id, const irep_idt &new_id)
std::unordered_map< irep_idt, irep_idt > type_mapt
std::unordered_map< irep_idt, irep_idt > expr_mapt
bool have_to_rename(const exprt &dest) const
bool rename(exprt &dest) const
void insert_expr(const irep_idt &old_id, const irep_idt &new_id)
bool operator()(typet &dest) const
Rename symbols in dest.
Expression to hold a symbol (variable)
The type of an expression, extends irept.