* src/native/vm/cldc1.1/java_lang_Class.c (methods): isInterface: Use
authorChristian Thalinger <twisti@complang.tuwien.ac.at>
Wed, 12 Sep 2007 08:01:19 +0000 (10:01 +0200)
committerChristian Thalinger <twisti@complang.tuwien.ac.at>
Wed, 12 Sep 2007 08:01:19 +0000 (10:01 +0200)
Java_java_lang_Class_isInterface.
(isInterface): New function.

* src/native/vm/gnu/java_lang_VMClass.c (vm/exceptions.h): Added.
(vm/stringlocal.h): Likewise.
(isInterface): Use class_is_interface.
(getInterfaces): Use class_get_interfaces.
(getDeclaredClasses): Use class_get_declaredclasses.
(throwException): Use exceptions_set_exception.
(getClassSignature): Implemented directly.

* src/native/vm/java_lang_Class.c (isInterface): Removed.
(getInterfaces): Likewise.
(getDeclaredClasses): Likewise.
(throwException): Likewise.
(getClassSignature): Likewise.
* src/native/vm/java_lang_Class.h: Likewise.

src/native/vm/cldc1.1/java_lang_Class.c
src/native/vm/gnu/java_lang_VMClass.c
src/native/vm/java_lang_Class.c
src/native/vm/java_lang_Class.h

index 1a4dbf7e037d10b011f156a9543d8278920dfadc..af400933833a497c8d158a5a4cebd128439f46e4 100644 (file)
@@ -47,7 +47,7 @@ static JNINativeMethod methods[] = {
        { "newInstance",      "()Ljava/lang/Object;",                 (void *) (ptrint) &Java_java_lang_Class_newInstance      },
        { "isInstance",       "(Ljava/lang/Object;)Z",                (void *) (ptrint) &Java_java_lang_Class_isInstance       },
        { "isAssignableFrom", "(Ljava/lang/Class;)Z",                 (void *) (ptrint) &Java_java_lang_Class_isAssignableFrom },
-       { "isInterface",      "()Z",                                  (void *) (ptrint) &_Jv_java_lang_Class_isInterface       },
+       { "isInterface",      "()Z",                                  (void *) (ptrint) &Java_java_lang_Class_isInterface      },
        { "isArray",          "()Z",                                  (void *) (ptrint) &Java_java_lang_Class_isArray          },
        { "getName",          "()Ljava/lang/String;",                 (void *) (ptrint) &Java_java_lang_Class_getName          },
 };
@@ -119,6 +119,21 @@ JNIEXPORT s4 JNICALL Java_java_lang_Class_isAssignableFrom(JNIEnv *env, java_lan
 }
 
 
+/*
+ * Class:     java/lang/Class
+ * Method:    isInterface
+ * Signature: ()Z
+ */
+JNIEXPORT int32_t JNICALL Java_java_lang_Class_isInterface(JNIEnv *env, java_lang_Class *this)
+{
+       classinfo *c;
+
+       c = LLNI_classinfo_unwrap(this);
+
+       return class_is_interface(c);
+}
+
+
 /*
  * Class:     java/lang/Class
  * Method:    isArray
index c5e1fef638f9420ce625df2b55ae391922ef5b99..6ec61b846beac0d0b81b4a61c99816ade942c93c 100644 (file)
@@ -46,6 +46,9 @@
 
 #include "native/vm/java_lang_Class.h"
 
+#include "vm/exceptions.h"
+#include "vm/stringlocal.h"
+
 #include "vmcore/class.h"
 
 
@@ -128,7 +131,11 @@ JNIEXPORT s4 JNICALL Java_java_lang_VMClass_isAssignableFrom(JNIEnv *env, jclass
  */
 JNIEXPORT s4 JNICALL Java_java_lang_VMClass_isInterface(JNIEnv *env, jclass clazz, java_lang_Class *klass)
 {
-       return _Jv_java_lang_Class_isInterface(env, klass);
+       classinfo *c;
+
+       c = LLNI_classinfo_unwrap(klass);
+
+       return class_is_interface(c);
 }
 
 
@@ -183,7 +190,14 @@ JNIEXPORT java_lang_Class* JNICALL Java_java_lang_VMClass_getSuperclass(JNIEnv *
  */
 JNIEXPORT java_handle_objectarray_t* JNICALL Java_java_lang_VMClass_getInterfaces(JNIEnv *env, jclass clazz, java_lang_Class *klass)
 {
-       return _Jv_java_lang_Class_getInterfaces(klass);
+       classinfo                 *c;
+       java_handle_objectarray_t *oa;
+
+       c = LLNI_classinfo_unwrap(klass);
+
+       oa = class_get_interfaces(c);
+
+       return oa;
 }
 
 
@@ -241,7 +255,14 @@ JNIEXPORT java_lang_Class* JNICALL Java_java_lang_VMClass_getDeclaringClass(JNIE
  */
 JNIEXPORT java_handle_objectarray_t* JNICALL Java_java_lang_VMClass_getDeclaredClasses(JNIEnv *env, jclass clazz, java_lang_Class *klass, s4 publicOnly)
 {
-       return _Jv_java_lang_Class_getDeclaredClasses(klass, publicOnly);
+       classinfo                 *c;
+       java_handle_objectarray_t *oa;
+
+       c = LLNI_classinfo_unwrap(klass);
+
+       oa = class_get_declaredclasses(c, publicOnly);
+
+       return oa;
 }
 
 
@@ -328,7 +349,11 @@ JNIEXPORT int32_t JNICALL Java_java_lang_VMClass_isArray(JNIEnv *env, jclass cla
  */
 JNIEXPORT void JNICALL Java_java_lang_VMClass_throwException(JNIEnv *env, jclass clazz, java_lang_Throwable *t)
 {
-       _Jv_java_lang_Class_throwException(t);
+       java_handle_t *o;
+
+       o = (java_handle_t *) t;
+
+       exceptions_set_exception(o);
 }
 
 
@@ -392,7 +417,22 @@ JNIEXPORT java_lang_reflect_Method* JNICALL Java_java_lang_VMClass_getEnclosingM
  */
 JNIEXPORT java_lang_String* JNICALL Java_java_lang_VMClass_getClassSignature(JNIEnv *env, jclass clazz, java_lang_Class* klass)
 {
-       return _Jv_java_lang_Class_getClassSignature(klass);
+       classinfo     *c;
+       utf           *u;
+       java_handle_t *s;
+
+       c = LLNI_classinfo_unwrap(klass);
+
+       u = class_get_signature(c);
+
+       if (u == NULL)
+               return NULL;
+
+       s = javastring_new(u);
+
+       /* in error case s is NULL */
+
+       return (java_lang_String *) s;
 }
 
 
index b075034eb0705efad2c0e4724108b0355b0db2c4..6b7f49e5838b3142f5dd1b01e399ac6b9dd0dcd9 100644 (file)
@@ -244,41 +244,8 @@ s4 _Jv_java_lang_Class_isAssignableFrom(java_lang_Class *klass, java_lang_Class
 }
 
 
-/*
- * Class:     java/lang/Class
- * Method:    isInterface
- * Signature: ()Z
- */
-JNIEXPORT int32_t JNICALL _Jv_java_lang_Class_isInterface(JNIEnv *env, java_lang_Class *this)
-{
-       classinfo *c;
-
-       c = LLNI_classinfo_unwrap(this);
-
-       return class_is_interface(c);
-}
-
-
 #if defined(ENABLE_JAVASE)
 
-/*
- * Class:     java/lang/Class
- * Method:    getInterfaces
- * Signature: ()[Ljava/lang/Class;
- */
-java_handle_objectarray_t *_Jv_java_lang_Class_getInterfaces(java_lang_Class *klass)
-{
-       classinfo                 *c;
-       java_handle_objectarray_t *oa;
-
-       c = LLNI_classinfo_unwrap(klass);
-
-       oa = class_get_interfaces(c);
-
-       return oa;
-}
-
-
 /*
  * Class:     java/lang/Class
  * Method:    getModifiers
@@ -326,24 +293,6 @@ s4 _Jv_java_lang_Class_getModifiers(java_lang_Class *klass, s4 ignoreInnerClasse
 }
 
 
-/*
- * Class:     java/lang/Class
- * Method:    getDeclaredClasses
- * Signature: (Z)[Ljava/lang/Class;
- */
-java_handle_objectarray_t *_Jv_java_lang_Class_getDeclaredClasses(java_lang_Class *klass, s4 publicOnly)
-{
-       classinfo                 *c;
-       java_handle_objectarray_t *oa;
-
-       c = LLNI_classinfo_unwrap(klass);
-
-       oa = class_get_declaredclasses(c, publicOnly);
-
-       return oa;
-}
-
-
 /*
  * Class:     java/lang/Class
  * Method:    getDeclaredFields
@@ -511,21 +460,6 @@ java_handle_objectarray_t *_Jv_java_lang_Class_getDeclaredConstructors(java_lang
 }
 
 
-/*
- * Class:     java/lang/Class
- * Method:    throwException
- * Signature: (Ljava/lang/Throwable;)V
- */
-void _Jv_java_lang_Class_throwException(java_lang_Throwable *t)
-{
-       java_handle_t *o;
-
-       o = (java_handle_t *) t;
-
-       exceptions_set_exception(o);
-}
-
-
 #if defined(WITH_CLASSPATH_GNU) && defined(ENABLE_ANNOTATIONS)
 /*
  * Class:     java/lang/Class
@@ -700,29 +634,6 @@ java_lang_reflect_Method *_Jv_java_lang_Class_getEnclosingMethod(java_lang_Class
        return rm;
 }
 
-
-/*
- * Class:     java/lang/Class
- * Method:    getClassSignature
- * Signature: (Ljava/lang/Class;)Ljava/lang/String;
- */
-java_lang_String *_Jv_java_lang_Class_getClassSignature(java_lang_Class* klass)
-{
-       classinfo     *c;
-       java_handle_t *o;
-
-       c = LLNI_classinfo_unwrap(klass);
-
-       if (c->signature == NULL)
-               return NULL;
-
-       o = javastring_new(c->signature);
-
-       /* in error case o is NULL */
-
-       return (java_lang_String *) o;
-}
-
 #endif /* ENABLE_JAVASE */
 
 
index 7293597462fa860f904aa89b436d6b26602f5dc1..8e1421b253edccd3d608c681f18589bdc67bc9fe 100644 (file)
@@ -60,16 +60,12 @@ java_lang_Class               *_Jv_java_lang_Class_forName(java_lang_String *nam
 
 s4                             _Jv_java_lang_Class_isInstance(java_lang_Class *klass, java_lang_Object *o);
 s4                             _Jv_java_lang_Class_isAssignableFrom(java_lang_Class *klass, java_lang_Class *c);
-JNIEXPORT int32_t JNICALL      _Jv_java_lang_Class_isInterface(JNIEnv *env, java_lang_Class *this);
 
 #if defined(ENABLE_JAVASE)
-java_handle_objectarray_t     *_Jv_java_lang_Class_getInterfaces(java_lang_Class *klass);
 s4                             _Jv_java_lang_Class_getModifiers(java_lang_Class *klass, s4 ignoreInnerClassesAttrib);
-java_handle_objectarray_t     *_Jv_java_lang_Class_getDeclaredClasses(java_lang_Class *klass, s4 publicOnly);
 java_handle_objectarray_t     *_Jv_java_lang_Class_getDeclaredFields(java_lang_Class *klass, s4 publicOnly);
 java_handle_objectarray_t     *_Jv_java_lang_Class_getDeclaredMethods(java_lang_Class *klass, s4 publicOnly);
 java_handle_objectarray_t     *_Jv_java_lang_Class_getDeclaredConstructors(java_lang_Class *klass, s4 publicOnly);
-void                           _Jv_java_lang_Class_throwException(java_lang_Throwable *t);
 
 #if defined(WITH_CLASSPATH_GNU) && defined(ENABLE_ANNOTATIONS)
 java_handle_objectarray_t     *_Jv_java_lang_Class_getDeclaredAnnotations(java_lang_Class* klass);
@@ -77,8 +73,6 @@ java_handle_objectarray_t     *_Jv_java_lang_Class_getDeclaredAnnotations(java_l
 
 java_lang_reflect_Constructor *_Jv_java_lang_Class_getEnclosingConstructor(java_lang_Class *klass);
 java_lang_reflect_Method      *_Jv_java_lang_Class_getEnclosingMethod(java_lang_Class *klass);
-
-java_lang_String              *_Jv_java_lang_Class_getClassSignature(java_lang_Class* klass);
 #endif
 
 #endif /* _JV_JAVA_LANG_CLASS_H */