50 #define CTR "Ljava/lang/reflect/Constructor;"
51 #define PD "Ljava/security/ProtectionDomain;"
52 #define BA "[B"
53
54 static JNINativeMethod methods[] = {
55 {"getName0", "()" STR, (void *)&JVM_GetClassName},
56 {"getSuperclass", "()" CLS, NULL},
57 {"getInterfaces0", "()[" CLS, (void *)&JVM_GetClassInterfaces},
58 {"isInterface", "()Z", (void *)&JVM_IsInterface},
59 {"getSigners", "()[" OBJ, (void *)&JVM_GetClassSigners},
60 {"setSigners", "([" OBJ ")V", (void *)&JVM_SetClassSigners},
61 {"isArray", "()Z", (void *)&JVM_IsArrayClass},
62 {"isPrimitive", "()Z", (void *)&JVM_IsPrimitiveClass},
63 {"getModifiers", "()I", (void *)&JVM_GetClassModifiers},
64 {"getDeclaredFields0","(Z)[" FLD, (void *)&JVM_GetClassDeclaredFields},
65 {"getDeclaredMethods0","(Z)[" MHD, (void *)&JVM_GetClassDeclaredMethods},
66 {"getDeclaredConstructors0","(Z)[" CTR, (void *)&JVM_GetClassDeclaredConstructors},
67 {"getProtectionDomain0", "()" PD, (void *)&JVM_GetProtectionDomain},
68 {"getDeclaredClasses0", "()[" CLS, (void *)&JVM_GetDeclaredClasses},
69 {"getDeclaringClass0", "()" CLS, (void *)&JVM_GetDeclaringClass},
70 {"getGenericSignature0", "()" STR, (void *)&JVM_GetClassSignature},
71 {"getRawAnnotations", "()" BA, (void *)&JVM_GetClassAnnotations},
72 {"getConstantPool", "()" CPL, (void *)&JVM_GetClassConstantPool},
73 {"desiredAssertionStatus0","("CLS")Z",(void *)&JVM_DesiredAssertionStatus},
74 {"getEnclosingMethod0", "()[" OBJ, (void *)&JVM_GetEnclosingMethodInfo},
75 {"getRawTypeAnnotations", "()" BA, (void *)&JVM_GetClassTypeAnnotations},
76 };
77
78 #undef OBJ
79 #undef CLS
80 #undef STR
81 #undef FLD
82 #undef MHD
83 #undef CTR
84 #undef PD
85
86 JNIEXPORT void JNICALL
87 Java_java_lang_Class_registerNatives(JNIEnv *env, jclass cls)
88 {
89 methods[1].fnPtr = (void *)(*env)->GetSuperclass;
|
50 #define CTR "Ljava/lang/reflect/Constructor;"
51 #define PD "Ljava/security/ProtectionDomain;"
52 #define BA "[B"
53
54 static JNINativeMethod methods[] = {
55 {"getName0", "()" STR, (void *)&JVM_GetClassName},
56 {"getSuperclass", "()" CLS, NULL},
57 {"getInterfaces0", "()[" CLS, (void *)&JVM_GetClassInterfaces},
58 {"isInterface", "()Z", (void *)&JVM_IsInterface},
59 {"getSigners", "()[" OBJ, (void *)&JVM_GetClassSigners},
60 {"setSigners", "([" OBJ ")V", (void *)&JVM_SetClassSigners},
61 {"isArray", "()Z", (void *)&JVM_IsArrayClass},
62 {"isPrimitive", "()Z", (void *)&JVM_IsPrimitiveClass},
63 {"getModifiers", "()I", (void *)&JVM_GetClassModifiers},
64 {"getDeclaredFields0","(Z)[" FLD, (void *)&JVM_GetClassDeclaredFields},
65 {"getDeclaredMethods0","(Z)[" MHD, (void *)&JVM_GetClassDeclaredMethods},
66 {"getDeclaredConstructors0","(Z)[" CTR, (void *)&JVM_GetClassDeclaredConstructors},
67 {"getProtectionDomain0", "()" PD, (void *)&JVM_GetProtectionDomain},
68 {"getDeclaredClasses0", "()[" CLS, (void *)&JVM_GetDeclaredClasses},
69 {"getDeclaringClass0", "()" CLS, (void *)&JVM_GetDeclaringClass},
70 {"getSimpleBinaryName0", "()" STR, (void *)&JVM_GetSimpleBinaryName},
71 {"getGenericSignature0", "()" STR, (void *)&JVM_GetClassSignature},
72 {"getRawAnnotations", "()" BA, (void *)&JVM_GetClassAnnotations},
73 {"getConstantPool", "()" CPL, (void *)&JVM_GetClassConstantPool},
74 {"desiredAssertionStatus0","("CLS")Z",(void *)&JVM_DesiredAssertionStatus},
75 {"getEnclosingMethod0", "()[" OBJ, (void *)&JVM_GetEnclosingMethodInfo},
76 {"getRawTypeAnnotations", "()" BA, (void *)&JVM_GetClassTypeAnnotations},
77 };
78
79 #undef OBJ
80 #undef CLS
81 #undef STR
82 #undef FLD
83 #undef MHD
84 #undef CTR
85 #undef PD
86
87 JNIEXPORT void JNICALL
88 Java_java_lang_Class_registerNatives(JNIEnv *env, jclass cls)
89 {
90 methods[1].fnPtr = (void *)(*env)->GetSuperclass;
|