10 #ifndef CPROVER_UTIL_NAMESPACE_H 11 #define CPROVER_UTIL_NAMESPACE_H 37 throw "identifier "+
id2string(name)+
" not found";
145 #endif // CPROVER_UTIL_NAMESPACE_H The type of an expression.
A generic tag-based type.
void add(const symbol_tablet &symbol_table)
const std::string & id2string(const irep_idt &d)
const symbol_tablet & get_symbol_table() const
symbol_table_listt symbol_table_list
Symbol table entry.This is a symbol in the symbol table, stored in an object of type symbol_tablet...
const typet & follow_tag(const union_tag_typet &) const
const symbolt & lookup(const irep_idt &name) const
virtual ~namespace_baset()
std::vector< const symbol_tablet * > symbol_table_listt
void follow_macros(exprt &) const
A reference into the symbol table.
std::size_t smallest_unused_suffix(const std::string &prefix) const override
See documentation for namespace_baset::smallest_unused_suffix().
namespacet(const symbol_tablet &_symbol_table1, const symbol_tablet &_symbol_table2)
const symbol_tablet * symbol_table1
namespacet(const symbol_tablet &_symbol_table)
const typet & follow(const typet &) const
namespacet(const symbol_tablet *_symbol_table1, const symbol_tablet *_symbol_table2)
multi_namespacet(const symbol_tablet &symbol_table)
bool lookup(const irep_idt &name, const symbolt *&symbol) const override
See namespace_baset::lookup().
Base class for all expressions.
std::size_t smallest_unused_suffix(const std::string &prefix) const override
See documentation for namespace_baset::smallest_unused_suffix().
const symbol_tablet * symbol_table2
Expression to hold a symbol (variable)
virtual std::size_t smallest_unused_suffix(const std::string &prefix) const =0
Returns the minimal integer n such that there is no symbol (in any of the symbol tables) whose name i...
bool lookup(const irep_idt &name, const symbolt *&symbol) const override
See namespace_baset::lookup().