cprover
replace_symbolt Class Reference

#include <replace_symbol.h>

Inheritance diagram for replace_symbolt:
[legend]
Collaboration diagram for replace_symbolt:
[legend]

Public Types

typedef std::unordered_map< irep_idt, exprt, irep_id_hashexpr_mapt
 
typedef std::unordered_map< irep_idt, typet, irep_id_hashtype_mapt
 

Public Member Functions

void insert (const irep_idt &identifier, const exprt &expr)
 
void insert (const class symbol_exprt &old_expr, const exprt &new_expr)
 
void insert (const irep_idt &identifier, const typet &type)
 
virtual bool replace (exprt &dest) const
 
virtual bool replace (typet &dest) const
 
void operator() (exprt &dest) const
 
void operator() (typet &dest) const
 
void clear ()
 
bool empty () const
 
 replace_symbolt ()
 
virtual ~replace_symbolt ()
 

Public Attributes

expr_mapt expr_map
 
type_mapt type_map
 

Protected Member Functions

bool have_to_replace (const exprt &dest) const
 
bool have_to_replace (const typet &type) const
 

Detailed Description

Definition at line 20 of file replace_symbol.h.

Member Typedef Documentation

◆ expr_mapt

typedef std::unordered_map<irep_idt, exprt, irep_id_hash> replace_symbolt::expr_mapt

Definition at line 23 of file replace_symbol.h.

◆ type_mapt

typedef std::unordered_map<irep_idt, typet, irep_id_hash> replace_symbolt::type_mapt

Definition at line 24 of file replace_symbol.h.

Constructor & Destructor Documentation

◆ replace_symbolt()

replace_symbolt::replace_symbolt ( )

Definition at line 14 of file replace_symbol.cpp.

◆ ~replace_symbolt()

replace_symbolt::~replace_symbolt ( )
virtual

Definition at line 18 of file replace_symbol.cpp.

Member Function Documentation

◆ clear()

void replace_symbolt::clear ( void  )
inline

◆ empty()

bool replace_symbolt::empty ( ) const
inline

Definition at line 60 of file replace_symbol.h.

References expr_map, and type_map.

◆ have_to_replace() [1/2]

bool replace_symbolt::have_to_replace ( const exprt dest) const
protected

◆ have_to_replace() [2/2]

◆ insert() [1/3]

void replace_symbolt::insert ( const irep_idt identifier,
const exprt expr 
)
inline

◆ insert() [2/3]

void replace_symbolt::insert ( const class symbol_exprt old_expr,
const exprt new_expr 
)

◆ insert() [3/3]

void replace_symbolt::insert ( const irep_idt identifier,
const typet type 
)
inline

Definition at line 35 of file replace_symbol.h.

References type_map.

◆ operator()() [1/2]

void replace_symbolt::operator() ( exprt dest) const
inline

Definition at line 44 of file replace_symbol.h.

References replace().

◆ operator()() [2/2]

void replace_symbolt::operator() ( typet dest) const
inline

Definition at line 49 of file replace_symbol.h.

References replace().

◆ replace() [1/2]

bool replace_symbolt::replace ( exprt dest) const
virtual

◆ replace() [2/2]

Member Data Documentation

◆ expr_map

◆ type_map

type_mapt replace_symbolt::type_map

Definition at line 69 of file replace_symbol.h.

Referenced by clear(), empty(), have_to_replace(), insert(), and replace().


The documentation for this class was generated from the following files: