cprover
|
#include <ci_lazy_methods.h>
Public Member Functions | |
ci_lazy_methodst (std::vector< irep_idt > &_needed_methods, std::set< irep_idt > &_needed_classes, symbol_tablet &_symbol_table) | |
void | add_needed_method (const irep_idt &) |
Notes method_symbol_name is referenced from some reachable function, and should therefore be elaborated. More... | |
bool | add_needed_class (const irep_idt &) |
Notes class class_symbol_name will be instantiated, or a static field belonging to it will be accessed. More... | |
Private Attributes | |
std::vector< irep_idt > & | needed_methods |
std::set< irep_idt > & | needed_classes |
symbol_tablet & | symbol_table |
Definition at line 19 of file ci_lazy_methods.h.
|
inline |
Definition at line 22 of file ci_lazy_methods.h.
References add_needed_class(), and add_needed_method().
bool ci_lazy_methodst::add_needed_class | ( | const irep_idt & | class_symbol_name | ) |
Notes class class_symbol_name
will be instantiated, or a static field belonging to it will be accessed.
Also notes that its static initializer is therefore reachable.
class_symbol_name
is new (not seen before). Definition at line 31 of file ci_lazy_methods.cpp.
References add_needed_method(), id2string(), needed_classes, symbol_table, and symbol_tablet::symbols.
Referenced by ci_lazy_methodst(), gather_field_types(), and initialize_needed_classes().
void ci_lazy_methodst::add_needed_method | ( | const irep_idt & | method_symbol_name | ) |
Notes method_symbol_name
is referenced from some reachable function, and should therefore be elaborated.
Definition at line 20 of file ci_lazy_methods.cpp.
References needed_methods.
Referenced by add_needed_class(), and ci_lazy_methodst().
|
private |
Definition at line 45 of file ci_lazy_methods.h.
Referenced by add_needed_class().
|
private |
Definition at line 41 of file ci_lazy_methods.h.
Referenced by add_needed_method().
|
private |
Definition at line 46 of file ci_lazy_methods.h.
Referenced by add_needed_class().