X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=src%2Fvm%2Fjavaobjects.hpp;h=d4463d33f7562da5e868d420b6fb6366e21cf35e;hb=0775e531232398c8363a68846224bd86e859e322;hp=edc917b19455529927254a14e56d0f0c91884d03;hpb=56fa24a4902f1e71f5d057487097f9438222f4b9;p=cacao.git diff --git a/src/vm/javaobjects.hpp b/src/vm/javaobjects.hpp index edc917b19..d4463d33f 100644 --- a/src/vm/javaobjects.hpp +++ b/src/vm/javaobjects.hpp @@ -1,6 +1,8 @@ /* src/vm/javaobjects.hpp - functions to create and access Java objects - Copyright (C) 2008 Theobroma Systems Ltd. + Copyright (C) 2010, 2011 + CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO + Copyright (C) 2008, 2009 Theobroma Systems Ltd. This file is part of CACAO. @@ -29,7 +31,7 @@ #include -#include "mm/memory.h" +#include "mm/memory.hpp" #include "native/llni.h" @@ -39,7 +41,7 @@ #include "vm/field.hpp" #include "vm/global.h" #include "vm/globals.hpp" -#include "vm/method.h" +#include "vm/method.hpp" #ifdef __cplusplus @@ -200,13 +202,13 @@ public: virtual ~java_lang_Object() {} // Getters. - virtual inline java_handle_t* get_handle () const { return _handle; } - inline vftbl_t* get_vftbl () const; - inline classinfo* get_Class () const; - inline int32_t get_hashcode() const; + virtual java_handle_t* get_handle () const { return _handle; } + vftbl_t* get_vftbl () const; + classinfo* get_Class () const; + int32_t get_hashcode() const; - inline bool is_null () const; - inline bool is_non_null() const; + bool is_null () const; + bool is_non_null() const; }; @@ -268,8 +270,8 @@ private: public: java_lang_Boolean(java_handle_t* h) : java_lang_Object(h) {} - inline uint8_t get_value(); - inline void set_value(uint8_t value); + uint8_t get_value(); + void set_value(uint8_t value); }; inline uint8_t java_lang_Boolean::get_value() @@ -300,8 +302,8 @@ private: public: java_lang_Byte(java_handle_t* h) : java_lang_Object(h) {} - inline int8_t get_value(); - inline void set_value(int8_t value); + int8_t get_value(); + void set_value(int8_t value); }; inline int8_t java_lang_Byte::get_value() @@ -332,8 +334,8 @@ private: public: java_lang_Character(java_handle_t* h) : java_lang_Object(h) {} - inline uint16_t get_value(); - inline void set_value(uint16_t value); + uint16_t get_value(); + void set_value(uint16_t value); }; inline uint16_t java_lang_Character::get_value() @@ -364,8 +366,8 @@ private: public: java_lang_Short(java_handle_t* h) : java_lang_Object(h) {} - inline int16_t get_value(); - inline void set_value(int16_t value); + int16_t get_value(); + void set_value(int16_t value); }; inline int16_t java_lang_Short::get_value() @@ -396,8 +398,8 @@ private: public: java_lang_Integer(java_handle_t* h) : java_lang_Object(h) {} - inline int32_t get_value(); - inline void set_value(int32_t value); + int32_t get_value(); + void set_value(int32_t value); }; inline int32_t java_lang_Integer::get_value() @@ -428,8 +430,8 @@ private: public: java_lang_Long(java_handle_t* h) : java_lang_Object(h) {} - inline int64_t get_value(); - inline void set_value(int64_t value); + int64_t get_value(); + void set_value(int64_t value); }; inline int64_t java_lang_Long::get_value() @@ -460,8 +462,8 @@ private: public: java_lang_Float(java_handle_t* h) : java_lang_Object(h) {} - inline float get_value(); - inline void set_value(float value); + float get_value(); + void set_value(float value); }; inline float java_lang_Float::get_value() @@ -492,8 +494,8 @@ private: public: java_lang_Double(java_handle_t* h) : java_lang_Object(h) {} - inline double get_value(); - inline void set_value(double value); + double get_value(); + void set_value(double value); }; inline double java_lang_Double::get_value() @@ -509,6 +511,21 @@ inline void java_lang_Double::set_value(double value) #if defined(ENABLE_JAVASE) +/** + * java/lang/management/MemoryUsage + * + * Object layout: + * + * 0. object header + * [other fields are not used] + */ +class java_lang_management_MemoryUsage : public java_lang_Object, private FieldAccess { +public: + java_lang_management_MemoryUsage(java_handle_t* h) : java_lang_Object(h) {} + java_lang_management_MemoryUsage(int64_t init, int64_t used, int64_t commited, int64_t maximum); +}; + + # if defined(ENABLE_ANNOTATIONS) /** * OpenJDK sun/reflect/ConstantPool @@ -529,8 +546,8 @@ public: sun_reflect_ConstantPool(java_handle_t* h, jclass constantPoolOop); // Setters. - inline void set_constantPoolOop(classinfo* value); - inline void set_constantPoolOop(jclass value); + void set_constantPoolOop(classinfo* value); + void set_constantPoolOop(jclass value); }; @@ -554,6 +571,8 @@ inline void sun_reflect_ConstantPool::set_constantPoolOop(jclass value) #endif // ENABLE_JAVASE +void jobjects_register_dyn_offsets(); +bool jobjects_run_dynoffsets_hook(classinfo *c); #if defined(WITH_JAVA_RUNTIME_LIBRARY_GNU_CLASSPATH) @@ -581,7 +600,7 @@ public: java_lang_Class(java_handle_t* h) : java_lang_Object(h) {} // Setters. - inline void set_pd(java_handle_t* value); + void set_pd(java_handle_t* value); }; inline void java_lang_Class::set_pd(java_handle_t* value) @@ -590,6 +609,39 @@ inline void java_lang_Class::set_pd(java_handle_t* value) } +/** + * GNU Classpath java/lang/ClassLoader + * + * Object layout: + * + * 0. object header + * 1. java.util.HashMap definedPackages + * 2. java.lang.ClassLoader parent + * [other fields are not used] + */ +class java_lang_ClassLoader : public java_lang_Object, private FieldAccess { +private: + // Static offsets of the object's instance fields. + // TODO These offsets need to be checked on VM startup. + static const off_t offset_definedPackages = MEMORY_ALIGN(sizeof(java_object_t), SIZEOF_VOID_P); + static const off_t offset_parent = MEMORY_ALIGN(offset_definedPackages + SIZEOF_VOID_P, SIZEOF_VOID_P); + +public: + java_lang_ClassLoader(java_handle_t* h) : java_lang_Object(h) {} + + // Getters. + java_handle_t* get_parent() const; + + // Invocation wrappers for static methods. + static java_handle_t* invoke_getSystemClassLoader(); +}; + +inline java_handle_t* java_lang_ClassLoader::get_parent() const +{ + return get(_handle, offset_parent); +} + + /** * GNU Classpath java/lang/StackTraceElement * @@ -654,14 +706,14 @@ public: java_lang_String(java_handle_t* h, java_handle_chararray_t* value, int32_t count, int32_t offset = 0); // Getters. - inline java_handle_chararray_t* get_value () const; - inline int32_t get_count () const; - inline int32_t get_offset() const; + java_handle_chararray_t* get_value () const; + int32_t get_count () const; + int32_t get_offset() const; // Setters. - inline void set_value (java_handle_chararray_t* value); - inline void set_count (int32_t value); - inline void set_offset(int32_t value); + void set_value (java_handle_chararray_t* value); + void set_count (int32_t value); + void set_offset(int32_t value); }; inline java_lang_String::java_lang_String(java_handle_t* h, java_handle_chararray_t* value, int32_t count, int32_t offset) : java_lang_Object(h) @@ -747,15 +799,15 @@ public: // java_lang_Thread(threadobject* t); // Getters. - inline java_handle_t* get_vmThread () const; - inline java_handle_t* get_group () const; - inline java_handle_t* get_name () const; - inline int32_t get_daemon () const; - inline int32_t get_priority () const; - inline java_handle_t* get_exceptionHandler() const; + java_handle_t* get_vmThread () const; + java_handle_t* get_group () const; + java_handle_t* get_name () const; + int32_t get_daemon () const; + int32_t get_priority () const; + java_handle_t* get_exceptionHandler() const; // Setters. - inline void set_group(java_handle_t* value); + void set_group(java_handle_t* value); }; @@ -825,12 +877,12 @@ public: java_lang_VMThread(java_handle_t* h, java_handle_t* thread, threadobject* vmdata); // Getters. - inline java_handle_t* get_thread() const; - inline threadobject* get_vmdata() const; + java_handle_t* get_thread() const; + threadobject* get_vmdata() const; // Setters. - inline void set_thread(java_handle_t* value); - inline void set_vmdata(threadobject* value); + void set_thread(java_handle_t* value); + void set_vmdata(threadobject* value); }; @@ -887,9 +939,9 @@ public: java_lang_Throwable(java_handle_t* h) : java_lang_Object(h) {} // Getters. - inline java_handle_t* get_detailMessage() const; - inline java_handle_t* get_cause () const; - inline java_handle_t* get_vmState () const; + java_handle_t* get_detailMessage() const; + java_handle_t* get_cause () const; + java_handle_t* get_vmState () const; }; @@ -926,8 +978,8 @@ private: public: java_lang_VMThrowable(java_handle_t* h) : java_lang_Object(h) {} - inline java_handle_bytearray_t* get_vmdata() const; - inline void set_vmdata(java_handle_bytearray_t* value); + java_handle_bytearray_t* get_vmdata() const; + void set_vmdata(java_handle_bytearray_t* value); }; @@ -971,23 +1023,23 @@ public: java_lang_reflect_VMConstructor(methodinfo* m); // Getters. - inline classinfo* get_clazz () const; - inline int32_t get_slot () const; - inline java_handle_bytearray_t* get_annotations () const; - inline java_handle_bytearray_t* get_parameterAnnotations() const; - inline java_handle_t* get_declaredAnnotations () const; - inline java_handle_t* get_cons () const; + classinfo* get_clazz () const; + int32_t get_slot () const; + java_handle_bytearray_t* get_annotations () const; + java_handle_bytearray_t* get_parameterAnnotations() const; + java_handle_t* get_declaredAnnotations () const; + java_handle_t* get_cons () const; // Setters. - inline void set_clazz (classinfo* value); - inline void set_slot (int32_t value); - inline void set_annotations (java_handle_bytearray_t* value); - inline void set_parameterAnnotations(java_handle_bytearray_t* value); - inline void set_declaredAnnotations (java_handle_t* value); - inline void set_cons (java_handle_t* value); + void set_clazz (classinfo* value); + void set_slot (int32_t value); + void set_annotations (java_handle_bytearray_t* value); + void set_parameterAnnotations(java_handle_bytearray_t* value); + void set_declaredAnnotations (java_handle_t* value); + void set_cons (java_handle_t* value); // Convenience functions. - inline methodinfo* get_method(); + methodinfo* get_method(); }; @@ -1103,15 +1155,15 @@ public: java_handle_t* new_instance(java_handle_objectarray_t* args); // Getters. - inline int32_t get_flag() const; - inline java_handle_t* get_cons() const; + int32_t get_flag() const; + java_handle_t* get_cons() const; // Setters. - inline void set_cons(java_handle_t* value); + void set_cons(java_handle_t* value); // Convenience functions. - inline methodinfo* get_method () const; - inline int32_t get_override() const; + methodinfo* get_method () const; + int32_t get_override() const; }; @@ -1191,22 +1243,22 @@ public: java_lang_reflect_VMField(fieldinfo* f); // Getters. - inline classinfo* get_clazz () const; - inline int32_t get_slot () const; - inline java_handle_bytearray_t* get_annotations () const; - inline java_handle_t* get_declaredAnnotations() const; - inline java_handle_t* get_f () const; + classinfo* get_clazz () const; + int32_t get_slot () const; + java_handle_bytearray_t* get_annotations () const; + java_handle_t* get_declaredAnnotations() const; + java_handle_t* get_f () const; // Setters. - inline void set_clazz (classinfo* value); - inline void set_name (java_handle_t* value); - inline void set_slot (int32_t value); - inline void set_annotations (java_handle_bytearray_t* value); - inline void set_declaredAnnotations(java_handle_t* value); - inline void set_f (java_handle_t* value); + void set_clazz (classinfo* value); + void set_name (java_handle_t* value); + void set_slot (int32_t value); + void set_annotations (java_handle_bytearray_t* value); + void set_declaredAnnotations(java_handle_t* value); + void set_f (java_handle_t* value); // Convenience functions. - inline fieldinfo* get_field() const; + fieldinfo* get_field() const; }; @@ -1316,14 +1368,14 @@ public: java_lang_reflect_Field(fieldinfo* f); // Getters. - inline int32_t get_flag() const; - inline java_handle_t* get_f() const; + int32_t get_flag() const; + java_handle_t* get_f() const; // Setters. - inline void set_f(java_handle_t* value); + void set_f(java_handle_t* value); // Convenience functions. - inline fieldinfo* get_field() const; + fieldinfo* get_field() const; }; @@ -1402,26 +1454,26 @@ public: java_lang_reflect_VMMethod(methodinfo* m); // Getters. - inline classinfo* get_clazz () const; - inline int32_t get_slot () const; - inline java_handle_bytearray_t* get_annotations () const; - inline java_handle_bytearray_t* get_parameterAnnotations() const; - inline java_handle_bytearray_t* get_annotationDefault () const; - inline java_handle_t* get_declaredAnnotations () const; - inline java_handle_t* get_m () const; + classinfo* get_clazz () const; + int32_t get_slot () const; + java_handle_bytearray_t* get_annotations () const; + java_handle_bytearray_t* get_parameterAnnotations() const; + java_handle_bytearray_t* get_annotationDefault () const; + java_handle_t* get_declaredAnnotations () const; + java_handle_t* get_m () const; // Setters. - inline void set_clazz (classinfo* value); - inline void set_name (java_handle_t* value); - inline void set_slot (int32_t value); - inline void set_annotations (java_handle_bytearray_t* value); - inline void set_parameterAnnotations(java_handle_bytearray_t* value); - inline void set_annotationDefault (java_handle_bytearray_t* value); - inline void set_declaredAnnotations (java_handle_t* value); - inline void set_m (java_handle_t* value); + void set_clazz (classinfo* value); + void set_name (java_handle_t* value); + void set_slot (int32_t value); + void set_annotations (java_handle_bytearray_t* value); + void set_parameterAnnotations(java_handle_bytearray_t* value); + void set_annotationDefault (java_handle_bytearray_t* value); + void set_declaredAnnotations (java_handle_t* value); + void set_m (java_handle_t* value); // Convenience functions. - inline methodinfo* get_method() const; + methodinfo* get_method() const; }; @@ -1555,15 +1607,15 @@ public: java_handle_t* invoke(java_handle_t* o, java_handle_objectarray_t* args); // Getters. - inline int32_t get_flag() const; - inline java_handle_t* get_m() const; + int32_t get_flag() const; + java_handle_t* get_m() const; // Setters. - inline void set_m(java_handle_t* value); + void set_m(java_handle_t* value); // Convenience functions. - inline methodinfo* get_method () const; - inline int32_t get_override() const; + methodinfo* get_method () const; + int32_t get_override() const; }; @@ -1640,7 +1692,7 @@ public: java_nio_Buffer(java_handle_t* h) : java_lang_Object(h) {} // Getters. - inline int32_t get_cap() const; + int32_t get_cap() const; }; inline int32_t java_nio_Buffer::get_cap() const @@ -1683,7 +1735,7 @@ public: java_nio_DirectByteBufferImpl(java_handle_t* h) : java_lang_Object(h) {} // Getters. - inline java_handle_t* get_address() const; + java_handle_t* get_address() const; }; @@ -1715,11 +1767,11 @@ public: gnu_classpath_Pointer(java_handle_t* h) : java_lang_Object(h) {} gnu_classpath_Pointer(java_handle_t* h, void* data); - // Setters. - inline void* get_data() const; + // Getters. + void* get_data() const; // Setters. - inline void set_data(void* value); + void set_data(void* value); }; inline gnu_classpath_Pointer::gnu_classpath_Pointer(java_handle_t* h, void* data) : java_lang_Object(h) @@ -1788,6 +1840,39 @@ inline java_lang_AssertionStatusDirectives::java_lang_AssertionStatusDirectives( } +/** + * OpenJDK java/lang/ClassLoader + * + * Object layout: + * + * 0. object header + * 1. boolean initialized + * 2. java.lang.ClassLoader parent + * [other fields are not used] + */ +class java_lang_ClassLoader : public java_lang_Object, private FieldAccess { +private: + // Static offsets of the object's instance fields. + // TODO These offsets need to be checked on VM startup. + static const off_t offset_initialized = MEMORY_ALIGN(sizeof(java_object_t), sizeof(int32_t)); + static const off_t offset_parent = MEMORY_ALIGN(offset_initialized + sizeof(int32_t), SIZEOF_VOID_P); + +public: + java_lang_ClassLoader(java_handle_t* h) : java_lang_Object(h) {} + + // Getters. + java_handle_t* get_parent() const; + + // Invocation wrappers for static methods. + static java_handle_t* invoke_getSystemClassLoader(); +}; + +inline java_handle_t* java_lang_ClassLoader::get_parent() const +{ + return get(_handle, offset_parent); +} + + /** * OpenJDK java/lang/StackTraceElement * @@ -1852,14 +1937,14 @@ public: java_lang_String(java_handle_t* h, java_handle_chararray_t* value, int32_t count, int32_t offset = 0); // Getters. - inline java_handle_chararray_t* get_value () const; - inline int32_t get_offset() const; - inline int32_t get_count () const; + java_handle_chararray_t* get_value () const; + int32_t get_offset() const; + int32_t get_count () const; // Setters. - inline void set_value (java_handle_chararray_t* value); - inline void set_offset(int32_t value); - inline void set_count (int32_t value); + void set_value (java_handle_chararray_t* value); + void set_offset(int32_t value); + void set_count (int32_t value); }; inline java_lang_String::java_lang_String(java_handle_t* h, java_handle_chararray_t* value, int32_t count, int32_t offset) : java_lang_Object(h) @@ -1963,14 +2048,15 @@ public: // java_lang_Thread(threadobject* t); // Getters. - inline int32_t get_priority () const; - inline int32_t get_daemon () const; - inline java_handle_t* get_group () const; - inline java_handle_t* get_uncaughtExceptionHandler() const; + int32_t get_priority () const; + int32_t get_daemon () const; + java_handle_t* get_group () const; + java_handle_t* get_uncaughtExceptionHandler() const; // Setters. - inline void set_priority(int32_t value); - inline void set_group (java_handle_t* value); + void set_priority (int32_t value); + void set_group (java_handle_t* value); + void set_threadStatus(int32_t value); }; @@ -2005,6 +2091,11 @@ inline void java_lang_Thread::set_group(java_handle_t* value) set(_handle, offset_group, value); } +inline void java_lang_Thread::set_threadStatus(int32_t value) +{ + set(_handle, offset_threadStatus, value); +} + /** @@ -2032,12 +2123,12 @@ public: java_lang_Throwable(java_handle_t* h, java_handle_bytearray_t* backtrace); // Getters. - inline java_handle_bytearray_t* get_backtrace () const; - inline java_handle_t* get_detailMessage() const; - inline java_handle_t* get_cause () const; + java_handle_bytearray_t* get_backtrace () const; + java_handle_t* get_detailMessage() const; + java_handle_t* get_cause () const; // Setters. - inline void set_backtrace(java_handle_bytearray_t* value); + void set_backtrace(java_handle_bytearray_t* value); }; @@ -2116,23 +2207,23 @@ public: java_handle_t* new_instance(java_handle_objectarray_t* args); // Getters. - inline int32_t get_override () const; - inline classinfo* get_clazz () const; - inline int32_t get_slot () const; - inline java_handle_bytearray_t* get_annotations() const; + int32_t get_override () const; + classinfo* get_clazz () const; + int32_t get_slot () const; + java_handle_bytearray_t* get_annotations() const; // Setters. - inline void set_clazz (classinfo* value); - inline void set_slot (int32_t value); - inline void set_parameterTypes (java_handle_objectarray_t* value); - inline void set_exceptionTypes (java_handle_objectarray_t* value); - inline void set_modifiers (int32_t value); - inline void set_signature (java_handle_t* value); - inline void set_annotations (java_handle_bytearray_t* value); - inline void set_parameterAnnotations(java_handle_bytearray_t* value); + void set_clazz (classinfo* value); + void set_slot (int32_t value); + void set_parameterTypes (java_handle_objectarray_t* value); + void set_exceptionTypes (java_handle_objectarray_t* value); + void set_modifiers (int32_t value); + void set_signature (java_handle_t* value); + void set_annotations (java_handle_bytearray_t* value); + void set_parameterAnnotations(java_handle_bytearray_t* value); // Convenience functions. - inline methodinfo* get_method(); + methodinfo* get_method(); }; @@ -2278,22 +2369,22 @@ public: java_lang_reflect_Field(fieldinfo* f); // Getters. - inline int32_t get_override () const; - inline classinfo* get_clazz () const; - inline int32_t get_slot () const; - inline java_handle_bytearray_t* get_annotations() const; + int32_t get_override () const; + classinfo* get_clazz () const; + int32_t get_slot () const; + java_handle_bytearray_t* get_annotations() const; // Setters. - inline void set_clazz (classinfo* value); - inline void set_slot (int32_t value); - inline void set_name (java_handle_t* value); - inline void set_type (classinfo* value); - inline void set_modifiers (int32_t value); - inline void set_signature (java_handle_t* value); - inline void set_annotations(java_handle_bytearray_t* value); + void set_clazz (classinfo* value); + void set_slot (int32_t value); + void set_name (java_handle_t* value); + void set_type (classinfo* value); + void set_modifiers (int32_t value); + void set_signature (java_handle_t* value); + void set_annotations(java_handle_bytearray_t* value); // Convenience functions. - inline fieldinfo* get_field() const; + fieldinfo* get_field() const; }; @@ -2436,17 +2527,17 @@ public: java_handle_t* invoke(java_handle_t* o, java_handle_objectarray_t* args); // Getters. - inline int32_t get_override () const; - inline classinfo* get_clazz () const; - inline int32_t get_slot () const; - inline java_handle_bytearray_t* get_annotations () const; - inline java_handle_bytearray_t* get_parameterAnnotations() const; - inline java_handle_bytearray_t* get_annotationDefault () const; + int32_t get_override () const; + classinfo* get_clazz () const; + int32_t get_slot () const; + java_handle_bytearray_t* get_annotations () const; + java_handle_bytearray_t* get_parameterAnnotations() const; + java_handle_bytearray_t* get_annotationDefault () const; // Setters. // Convenience functions. - inline methodinfo* get_method() const; + methodinfo* get_method() const; }; @@ -2537,7 +2628,7 @@ public: java_nio_Buffer(java_handle_t* h) : java_lang_Object(h) {} // Getters. - inline void* get_address() const; + void* get_address() const; }; @@ -2575,14 +2666,14 @@ public: com_sun_cldchi_jvm_FileDescriptor(java_handle_t* h, com_sun_cldchi_jvm_FileDescriptor& fd); // Getters. - inline int64_t get_pointer () const; - inline int32_t get_position() const; - inline int32_t get_length () const; + int64_t get_pointer () const; + int32_t get_position() const; + int32_t get_length () const; // Setters. - inline void set_pointer (int64_t value); - inline void set_position(int32_t value); - inline void set_length (int32_t value); + void set_pointer (int64_t value); + void set_position(int32_t value); + void set_length (int32_t value); }; @@ -2654,14 +2745,14 @@ public: java_lang_String(java_handle_t* h, java_handle_chararray_t* value, int32_t count, int32_t offset = 0); // Getters. - inline java_handle_chararray_t* get_value () const; - inline int32_t get_offset() const; - inline int32_t get_count () const; + java_handle_chararray_t* get_value () const; + int32_t get_offset() const; + int32_t get_count () const; // Setters. - inline void set_value (java_handle_chararray_t* value); - inline void set_offset(int32_t value); - inline void set_count (int32_t value); + void set_value (java_handle_chararray_t* value); + void set_offset(int32_t value); + void set_count (int32_t value); }; @@ -2732,12 +2823,12 @@ public: // java_lang_Thread(threadobject* t); // Getters. - inline int32_t get_priority () const; - inline threadobject* get_vm_thread() const; - inline java_handle_chararray_t* get_name () const; + int32_t get_priority () const; + threadobject* get_vm_thread() const; + java_handle_chararray_t* get_name () const; // Setters. - inline void set_vm_thread(threadobject* value); + void set_vm_thread(threadobject* value); }; @@ -2789,11 +2880,11 @@ public: java_lang_Throwable(java_handle_t* h) : java_lang_Object(h) {} // Getters. - inline java_handle_t* get_detailMessage() const; - inline java_handle_bytearray_t* get_backtrace () const; + java_handle_t* get_detailMessage() const; + java_handle_bytearray_t* get_backtrace () const; // Setters. - inline void set_backtrace(java_handle_bytearray_t* value); + void set_backtrace(java_handle_bytearray_t* value); }; @@ -2815,13 +2906,6 @@ inline void java_lang_Throwable::set_backtrace(java_handle_bytearray_t* value) #endif // WITH_JAVA_RUNTIME_LIBRARY_CLDC1_1 -#else - -// Legacy C interface. -java_handle_t* java_lang_reflect_Constructor_create(methodinfo* m); -java_handle_t* java_lang_reflect_Field_create(fieldinfo* f); -java_handle_t* java_lang_reflect_Method_create(methodinfo* m); - #endif #endif // _JAVAOBJECTS_HPP @@ -2838,4 +2922,5 @@ java_handle_t* java_lang_reflect_Method_create(methodinfo* m); * c-basic-offset: 4 * tab-width: 4 * End: + * vim:noexpandtab:sw=4:ts=4: */