6 #ifndef CPROVER_UTIL_SYMBOL_TABLE_H 7 #define CPROVER_UTIL_SYMBOL_TABLE_H 11 #define forall_symbol_base_map(it, expr, base_name) \ 12 for(symbol_base_mapt::const_iterator it=(expr).lower_bound(base_name), \ 13 it_end=(expr).upper_bound(base_name); \ 93 virtual std::pair<symbolt &, bool>
insert(
symbolt symbol)
override;
96 virtual void erase(
const symbolst::const_iterator &entry)
override;
114 #endif // CPROVER_UTIL_SYMBOL_TABLE_H symbolst internal_symbols
virtual void clear() override
std::multimap< irep_idt, irep_idt > symbol_base_mapt
virtual const symbol_tablet & get_symbol_table() const override
Symbol table entry.This is a symbol in the symbol table, stored in an object of type symbol_tablet...
symbol_tablet & operator=(const symbol_tablet &other)
std::multimap< irep_idt, irep_idt > symbol_module_mapt
virtual symbolt * get_writeable(const irep_idt &name) override
Find a symbol in the symbol table for read-write access.
symbol_tablet(symbol_tablet &&other)
symbol_module_mapt internal_symbol_module_map
virtual bool move(symbolt &symbol, symbolt *&new_symbol) override
Move a symbol into the symbol table.
std::unordered_map< irep_idt, symbolt > symbolst
virtual iteratort begin() override
virtual iteratort end() override
symbol_tablet & operator=(symbol_tablet &&other)
dstringt has one field, an unsigned integer no which is an index into a static table of strings...
virtual void erase(const symbolst::const_iterator &entry) override
Remove a symbol from the symbol table.
symbol_base_mapt internal_symbol_base_map
The symbol table base class interface.
symbol_tablet(const symbol_tablet &other)
void swap(symbol_tablet &other)
virtual std::pair< symbolt &, bool > insert(symbolt symbol) override
Author: Diffblue Ltd.