31 #include <sys/types.h>
74 #if defined(WITH_JAVA_RUNTIME_LIBRARY_GNU_CLASSPATH)
76 #elif defined(WITH_JAVA_RUNTIME_LIBRARY_OPENJDK)
78 #elif defined(WITH_JAVA_RUNTIME_LIBRARY_CLDC1_1)
81 # error unknown classpath configuration
134 #if defined(ENABLE_JAVASE)
136 #if defined(ENABLE_ANNOTATIONS)
153 #if defined(ENABLE_JAVASE)
154 # if defined(WITH_JAVA_RUNTIME_LIBRARY_OPENJDK)
180 : next(next),
classref(referer, name) {}
267 #if defined(ENABLE_JAVASE)
java_handle_t * class_get_name(classinfo *c)
java_handle_objectarray_t * class_get_declaredfields(classinfo *c, bool publicOnly)
classref_or_classinfo outer_class
dummy_java_lang_Class object
ConstantPoolTag
Types for entries of a classes constant pool.
fieldinfo * class_resolvefield(classinfo *c, Utf8String name, Utf8String desc, classinfo *referer)
constant_classref * class_get_classref_component_of(constant_classref *ref)
methodinfo * class_resolveclassmethod(classinfo *c, Utf8String name, Utf8String desc, classinfo *referer, bool throwexception)
void * class_getconstant(classinfo *c, u4 pos, ConstantPoolTag ctype)
java_handle_t * class_get_enclosingconstructor(classinfo *c)
Return the enclosing constructor as java.lang.reflect.Constructor object for the given class...
methodinfo * class_get_enclosingmethod_raw(classinfo *c)
static classinfo * class_get_superclass(classinfo *c)
void class_print(classinfo *c)
int32_t class_get_modifiers(classinfo *c, bool ignoreInnerClassesAttrib)
classinfo * class_array_of(classinfo *component, bool link)
Utf8String class_get_signature(classinfo *c)
void * innerclass_getconstant(classinfo *c, u4 pos, ConstantPoolTag ctype)
classinfo * class_get_declaringclass(classinfo *c)
classloader_t * classloader
void class_classref_or_classinfo_print(classref_or_classinfo c)
classref_or_classinfo enclosingclass
void class_classref_println(constant_classref *cr)
bool class_is_instance(classinfo *c, java_handle_t *h)
classinfo * class_get_enclosingclass(classinfo *c)
static bool class_is_array(classinfo *c)
JNIEnv jclass jobject const char * name
java_object_t * method_annotationdefaults
constant_classref * classrefs
methodinfo * class_findmethod(classinfo *c, Utf8String name, Utf8String desc)
bool class_is_arraycompatible(arraydescriptor *desc, arraydescriptor *target)
static classloader_t * class_get_classloader(classinfo *c)
classinfo * class_multiarray_of(s4 dim, classinfo *element, bool link)
void class_set_packagename(classinfo *c)
constant_nameandtype * enclosingmethod
java_object_t * method_parameterannotations
cacao::ClassFileVersion version
void link(basicblock *v, basicblock *w)
java_handle_objectarray_t * class_get_declaredconstructors(classinfo *c, bool publicOnly)
Return an array of declared constructors of the given class.
java_handle_t * class_get_classname(classinfo *c)
Returns the classname of the class, where slashes ('/') are replaced by dots ('.
fieldinfo * class_findfield_by_name(classinfo *c, Utf8String name, bool throwexception)
java_object_t * method_annotations
bool class_load_attributes(ClassBuffer &cb)
A version of the Java class file format.
java_handle_objectarray_t * class_get_declaredclasses(classinfo *c, bool publicOnly)
constant_classref * class_lookup_classref(classinfo *cls, Utf8String name)
threadobject * initializing_thread
java_handle_objectarray_t * class_get_interfaces(classinfo *c)
java_handle_bytearray_t * class_get_annotations(classinfo *c)
constant_classref * class_get_self_classref(classinfo *cls)
java_handle_t * class_get_enclosingmethod(classinfo *c)
Return the enclosing method as java.lang.reflect.Method object for the given class.
bool class_initializing_thread_is_self(classinfo *c)
Helper function for the function class_is_or_almost_initialized.
java_handle_objectarray_t * class_get_declaredmethods(classinfo *c, bool publicOnly)
void class_println(classinfo *c)
methodinfo * class_resolvemethod(classinfo *c, Utf8String name, Utf8String desc)
void class_showconstantpool(classinfo *c)
static bool class_is_interface(classinfo *c)
fieldinfo * class_findfield(classinfo *c, Utf8String name, Utf8String desc)
void class_classref_print(constant_classref *cr)
void class_printflags(classinfo *c)
classref_or_classinfo inner_class
static bool class_is_memberclass(classinfo *c)
constant_classref * class_get_classref(classinfo *cls, Utf8String name)
static bool class_is_anonymousclass(classinfo *c)
bool class_isanysubclass(classinfo *sub, classinfo *super)
bool class_issubclass(classinfo *sub, classinfo *super)
OStream & operator<<(OStream &OS, const std::string &t)
arraydescriptor * arraydesc
void class_classref_or_classinfo_println(classref_or_classinfo c)
java_object_t * field_annotations
static bool class_is_localclass(classinfo *c)
void class_showmethods(classinfo *c)
void class_free(classinfo *c)
classinfo * link_class(classinfo *c)
static bool class_is_or_almost_initialized(classinfo *c)
void class_postset_header_vftbl(void)
bool class_is_assignable_from(classinfo *to, classinfo *from)
extra_classref * extclassrefs
classref_or_classinfo declaringclass
static bool class_is_primitive(classinfo *c)
classinfo * class_create_classinfo(Utf8String classname)
java_object_t * annotations
innerclassinfo * innerclass
const char const void jint length
classinfo * class_define(Utf8String name, classloader_t *cl, int32_t length, uint8_t *data, java_handle_t *pd)
classinfo * class_get_componenttype(classinfo *c)
constant_classref * class_get_classref_multiarray_of(s4 dim, constant_classref *ref)
methodinfo * class_resolveinterfacemethod(classinfo *c, Utf8String name, Utf8String desc, classinfo *referer, bool throwexception)