CBMC
java_root_class.h File Reference
#include <util/irep.h>
+ Include dependency graph for java_root_class.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void java_root_class (class symbolt &class_symbol)
 Create components to an object of the root class (usually java.lang.Object) Specifically, we add a new component, '@class_identifier'. More...
 
void java_root_class_init (struct_exprt &jlo, const struct_typet &root_type, const irep_idt &class_identifier)
 Adds members for an object of the root class (usually java.lang.Object). More...
 

Function Documentation

◆ java_root_class()

void java_root_class ( symbolt class_symbol)

Create components to an object of the root class (usually java.lang.Object) Specifically, we add a new component, '@class_identifier'.

This used primary to replace an expression like 'e instanceof A' with 'e.@class_identifier == "A"'

Parameters
class_symbolclass symbol

Definition at line 20 of file java_root_class.cpp.

◆ java_root_class_init()

void java_root_class_init ( struct_exprt jlo,
const struct_typet root_type,
const irep_idt class_identifier 
)

Adds members for an object of the root class (usually java.lang.Object).

Parameters
[out]jloobject to initialize
root_typetype of the root class
class_identifierclass identifier field, generally begins with "java::" prefix.

Definition at line 41 of file java_root_class.cpp.