CACAO
Public Member Functions | Static Public Member Functions | Data Fields | Static Private Member Functions
typeinfo_t Struct Reference

Public Member Functions

bool is_primitive () const
 
bool is_reference () const
 
bool is_nulltype () const
 
bool is_newobject () const
 
voidreturnaddress () const
 
instructionnewobject_instruction () const
 
bool is_array () const
 
bool is_simple_array () const
 
bool is_primitive_array (ArrayType at) const
 
bool is_array_of_refs () const
 
bool maybe_array () const
 
bool maybe_primitive_array (ArrayType at) const
 
bool maybe_array_of_refs () const
 
typecheck_result is_assignable_to (typeinfo_t *dest) const
 
typecheck_result is_assignable_to_class (classref_or_classinfo dest) const
 
void init_primitive ()
 
void init_returnaddress (void *adr)
 
void init_non_array_classinfo (classinfo *cls)
 
void init_java_lang_class (classref_or_classinfo cls)
 Initialize object type java.lang.Class. More...
 
void init_class (classinfo *c)
 Initialize object type. More...
 
bool init_class (classref_or_classinfo c)
 
bool init_class (constant_classref *c)
 
bool init_component (const typeinfo_t &srcarray)
 
bool init_from_typedesc (const typedesc *desc, u1 *type)
 
void init_nulltype ()
 
void init_newobject (instruction *instr)
 
void init_primitive_array (ArrayType arraytype)
 
typecheck_result merge (methodinfo *m, const typeinfo_t *t)
 functions for merging types More...
 

Static Public Member Functions

static void clone (const typeinfo_t &src, typeinfo_t &dst)
 

Data Fields

classref_or_classinfo typeclass
 
classref_or_classinfo elementclass
 
typeinfo_mergedlist_tmerged
 
u1 dimension
 
ArrayType elementtype
 

Static Private Member Functions

static void clone_merged (const typeinfo_t &src, typeinfo_t &dst)
 

Detailed Description

Definition at line 235 of file typeinfo.hpp.

Member Function Documentation

static void typeinfo_t::clone ( const typeinfo_t src,
typeinfo_t dst 
)
inlinestatic

Definition at line 357 of file typeinfo.hpp.

void typeinfo_t::clone_merged ( const typeinfo_t src,
typeinfo_t dst 
)
staticprivate

Definition at line 1194 of file typeinfo.cpp.

void typeinfo_t::init_class ( classinfo c)

Initialize object type.

Definition at line 790 of file typeinfo.cpp.

bool typeinfo_t::init_class ( classref_or_classinfo  c)

Definition at line 823 of file typeinfo.cpp.

bool typeinfo_t::init_class ( constant_classref c)
inline

Definition at line 327 of file typeinfo.hpp.

bool typeinfo_t::init_component ( const typeinfo_t srcarray)

Definition at line 1144 of file typeinfo.cpp.

bool typeinfo_t::init_from_typedesc ( const typedesc desc,
u1 type 
)

Definition at line 889 of file typeinfo.cpp.

void typeinfo_t::init_java_lang_class ( classref_or_classinfo  cls)
inline

Initialize object type java.lang.Class.

Definition at line 315 of file typeinfo.hpp.

void typeinfo_t::init_newobject ( instruction instr)
inline

Definition at line 339 of file typeinfo.hpp.

void typeinfo_t::init_non_array_classinfo ( classinfo cls)
inline

Definition at line 306 of file typeinfo.hpp.

void typeinfo_t::init_nulltype ( )
inline

Definition at line 335 of file typeinfo.hpp.

void typeinfo_t::init_primitive ( )
inline

Definition at line 290 of file typeinfo.hpp.

void typeinfo_t::init_primitive_array ( ArrayType  arraytype)
inline

Definition at line 347 of file typeinfo.hpp.

void typeinfo_t::init_returnaddress ( void adr)
inline

Definition at line 298 of file typeinfo.hpp.

bool typeinfo_t::is_array ( ) const
inline

Definition at line 260 of file typeinfo.hpp.

bool typeinfo_t::is_array_of_refs ( ) const
inline

Definition at line 266 of file typeinfo.hpp.

typecheck_result typeinfo_t::is_assignable_to ( typeinfo_t dest) const

Definition at line 751 of file typeinfo.cpp.

typecheck_result typeinfo_t::is_assignable_to_class ( classref_or_classinfo  dest) const

Definition at line 586 of file typeinfo.cpp.

bool typeinfo_t::is_newobject ( ) const
inline

Definition at line 246 of file typeinfo.hpp.

bool typeinfo_t::is_nulltype ( ) const
inline

Definition at line 245 of file typeinfo.hpp.

bool typeinfo_t::is_primitive ( ) const
inline

Definition at line 242 of file typeinfo.hpp.

bool typeinfo_t::is_primitive_array ( ArrayType  at) const
inline

Definition at line 263 of file typeinfo.hpp.

bool typeinfo_t::is_reference ( ) const
inline

Definition at line 243 of file typeinfo.hpp.

bool typeinfo_t::is_simple_array ( ) const
inline

Definition at line 261 of file typeinfo.hpp.

bool typeinfo_t::maybe_array ( ) const
inline

Definition at line 272 of file typeinfo.hpp.

bool typeinfo_t::maybe_array_of_refs ( ) const
inline

Definition at line 280 of file typeinfo.hpp.

bool typeinfo_t::maybe_primitive_array ( ArrayType  at) const
inline

Definition at line 276 of file typeinfo.hpp.

typecheck_result typeinfo_t::merge ( methodinfo m,
const typeinfo_t t 
)

functions for merging types

Definition at line 1672 of file typeinfo.cpp.

instruction* typeinfo_t::newobject_instruction ( ) const
inline

Definition at line 254 of file typeinfo.hpp.

void* typeinfo_t::returnaddress ( ) const
inline

Definition at line 248 of file typeinfo.hpp.

Field Documentation

u1 typeinfo_t::dimension

Definition at line 239 of file typeinfo.hpp.

classref_or_classinfo typeinfo_t::elementclass

Definition at line 237 of file typeinfo.hpp.

ArrayType typeinfo_t::elementtype

Definition at line 240 of file typeinfo.hpp.

typeinfo_mergedlist_t* typeinfo_t::merged

Definition at line 238 of file typeinfo.hpp.

classref_or_classinfo typeinfo_t::typeclass

Definition at line 236 of file typeinfo.hpp.


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