21 out <<
" " <<
name <<
'\n';
29 out <<
" static_lifetime";
31 out <<
" thread_local";
59 out <<
" mode=" <<
mode;
63 out <<
" module=" <<
module;
67 out <<
" location: " <<
location <<
'\n';
87 #define SYM_SWAP1(x) x.swap(b.x) 98 #define SYM_SWAP2(x) std::swap(x, b.x) irep_idt name
The unique identifier.
const std::string & id2string(const irep_idt &d)
void show(std::ostream &out) const
Dump the state of a symbol object to a given output stream.
std::string pretty(unsigned indent=0, unsigned max_indent=0) const
irep_idt mode
Language mode.
exprt value
Initial value of symbol.
irep_idt module
Name of module the symbol belongs to.
irep_idt pretty_name
Language-specific display name.
class symbol_exprt symbol_expr() const
Produces a symbol_exprt for a symbol.
API to expression classes.
std::ostream & operator<<(std::ostream &out, const symbolt &symbol)
Overload of stream operator to work with symbols.
void swap(symbolt &b)
Swap values between two symbols.
typet type
Type of symbol.
source_locationt location
Source code location of definition of symbol.
irep_idt base_name
Base (non-scoped) name.
Expression to hold a symbol (variable)
bool has_suffix(const std::string &s, const std::string &suffix)
bool is_well_formed() const
Check that a symbol is well formed.