|
cprover
|
Public Member Functions | |
| remove_instanceoft (symbol_table_baset &symbol_table, const class_hierarchyt &class_hierarchy, message_handlert &message_handler) | |
| bool | lower_instanceof (const irep_idt &function_identifier, goto_programt &) |
| Replace every instanceof in the passed function body with an explicit class-identifier test. | |
| bool | lower_instanceof (const irep_idt &function_identifier, goto_programt &, goto_programt::targett) |
| Replaces expressions like e instanceof A with e. | |
Protected Member Functions | |
| bool | lower_instanceof (const irep_idt &function_identifier, exprt &, goto_programt &, goto_programt::targett) |
| Replaces an expression like e instanceof A with e. | |
Protected Attributes | |
| symbol_table_baset & | symbol_table |
| const class_hierarchyt & | class_hierarchy |
| namespacet | ns |
| message_handlert & | message_handler |
Definition at line 22 of file remove_instanceof.cpp.
|
inline |
Definition at line 25 of file remove_instanceof.cpp.
|
protected |
Replaces an expression like e instanceof A with e.
@class_identifier == "A" or a big-or of similar expressions if we know of subtypes that also satisfy the given test.
| function_identifier | name of the goto function goto_program |
| expr | Expression to lower (the code or the guard of an instruction) |
| goto_program | program the expression belongs to |
| this_inst | instruction the expression is found at |
Definition at line 101 of file remove_instanceof.cpp.
| bool remove_instanceoft::lower_instanceof | ( | const irep_idt & | function_identifier, |
| goto_programt & | goto_program ) |
Replace every instanceof in the passed function body with an explicit class-identifier test.
Extra auxiliary variables may be introduced into symbol_table.
| function_identifier | name of the goto function goto_program |
| goto_program | The function body to work on. |
Definition at line 278 of file remove_instanceof.cpp.
| bool remove_instanceoft::lower_instanceof | ( | const irep_idt & | function_identifier, |
| goto_programt & | goto_program, | ||
| goto_programt::targett | target ) |
Replaces expressions like e instanceof A with e.
@class_identifier == "A" or a big-or of similar expressions if we know of subtypes that also satisfy the given test. Does this for the code or guard at a specific instruction.
| function_identifier | name of the goto function goto_program |
| goto_program | program to process |
| target | instruction to check for instanceof expressions |
Definition at line 239 of file remove_instanceof.cpp.
|
protected |
Definition at line 47 of file remove_instanceof.cpp.
|
protected |
Definition at line 49 of file remove_instanceof.cpp.
|
protected |
Definition at line 48 of file remove_instanceof.cpp.
|
protected |
Definition at line 46 of file remove_instanceof.cpp.