1 #ifndef __JAVA_LANG_CLASS__ 2 #define __JAVA_LANG_CLASS__ 3 4 #include "xmlvm.h" 5 6 // Preprocessor constants for interfaces: 7 #define XMLVM_ITABLE_SIZE_java_lang_Class 5 8 // Implemented interfaces: 9 #include "java_io_Serializable.h" 10 #include "java_lang_reflect_AnnotatedElement.h" 11 #include "java_lang_reflect_GenericDeclaration.h" 12 #include "java_lang_reflect_Type.h" 13 // Super Class: 14 #include "java_lang_Object.h" 15 16 // Circular references: 17 #ifndef XMLVM_FORWARD_DECL_java_io_File 18 #define XMLVM_FORWARD_DECL_java_io_File 19 XMLVM_FORWARD_DECL(java_io_File) 20 #endif 21 #ifndef XMLVM_FORWARD_DECL_java_io_IOException 22 #define XMLVM_FORWARD_DECL_java_io_IOException 23 XMLVM_FORWARD_DECL(java_io_IOException) 24 #endif 25 #ifndef XMLVM_FORWARD_DECL_java_lang_ClassLoader 26 #define XMLVM_FORWARD_DECL_java_lang_ClassLoader 27 XMLVM_FORWARD_DECL(java_lang_ClassLoader) 28 #endif 29 #ifndef XMLVM_FORWARD_DECL_java_lang_RuntimeException 30 #define XMLVM_FORWARD_DECL_java_lang_RuntimeException 31 XMLVM_FORWARD_DECL(java_lang_RuntimeException) 32 #endif 33 #ifndef XMLVM_FORWARD_DECL_java_lang_String 34 #define XMLVM_FORWARD_DECL_java_lang_String 35 XMLVM_FORWARD_DECL(java_lang_String) 36 #endif 37 #ifndef XMLVM_FORWARD_DECL_java_lang_StringBuilder 38 #define XMLVM_FORWARD_DECL_java_lang_StringBuilder 39 XMLVM_FORWARD_DECL(java_lang_StringBuilder) 40 #endif 41 #ifndef XMLVM_FORWARD_DECL_java_lang_System 42 #define XMLVM_FORWARD_DECL_java_lang_System 43 XMLVM_FORWARD_DECL(java_lang_System) 44 #endif 45 #ifndef XMLVM_FORWARD_DECL_java_lang_Throwable 46 #define XMLVM_FORWARD_DECL_java_lang_Throwable 47 XMLVM_FORWARD_DECL(java_lang_Throwable) 48 #endif 49 #ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Constructor 50 #define XMLVM_FORWARD_DECL_java_lang_reflect_Constructor 51 XMLVM_FORWARD_DECL(java_lang_reflect_Constructor) 52 #endif 53 #ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Field 54 #define XMLVM_FORWARD_DECL_java_lang_reflect_Field 55 XMLVM_FORWARD_DECL(java_lang_reflect_Field) 56 #endif 57 #ifndef XMLVM_FORWARD_DECL_java_lang_reflect_Method 58 #define XMLVM_FORWARD_DECL_java_lang_reflect_Method 59 XMLVM_FORWARD_DECL(java_lang_reflect_Method) 60 #endif 61 #ifndef XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMClassLoader 62 #define XMLVM_FORWARD_DECL_org_xmlvm_runtime_XMLVMClassLoader 63 XMLVM_FORWARD_DECL(org_xmlvm_runtime_XMLVMClassLoader) 64 #endif 65 // Class declarations for java.lang.Class 66 XMLVM_DEFINE_CLASS(java_lang_Class, 13, XMLVM_ITABLE_SIZE_java_lang_Class) 67 68 extern JAVA_OBJECT __CLASS_java_lang_Class; 69 extern JAVA_OBJECT __CLASS_java_lang_Class_1ARRAY; 70 extern JAVA_OBJECT __CLASS_java_lang_Class_2ARRAY; 71 extern JAVA_OBJECT __CLASS_java_lang_Class_3ARRAY; 72 //XMLVM_BEGIN_DECLARATIONS 73 #define __ADDITIONAL_INSTANCE_FIELDS_java_lang_Class 74 //XMLVM_END_DECLARATIONS 75 76 #define __INSTANCE_FIELDS_java_lang_Class \ 77 __INSTANCE_FIELDS_java_lang_Object; \ 78 struct { \ 79 JAVA_OBJECT tib_; \ 80 __ADDITIONAL_INSTANCE_FIELDS_java_lang_Class \ 81 } java_lang_Class 82 83 struct java_lang_Class { 84 __TIB_DEFINITION_java_lang_Class* tib; 85 struct { 86 __INSTANCE_FIELDS_java_lang_Class; 87 } fields; 88 }; 89 #ifndef XMLVM_FORWARD_DECL_java_lang_Class 90 #define XMLVM_FORWARD_DECL_java_lang_Class 91 typedef struct java_lang_Class java_lang_Class; 92 #endif 93 94 #define XMLVM_VTABLE_SIZE_java_lang_Class 13 95 #define XMLVM_VTABLE_IDX_java_lang_Class_getAnnotation___java_lang_Class 6 96 #define XMLVM_VTABLE_IDX_java_lang_Class_getAnnotations__ 7 97 #define XMLVM_VTABLE_IDX_java_lang_Class_getDeclaredAnnotations__ 8 98 #define XMLVM_VTABLE_IDX_java_lang_Class_getMethod___java_lang_String_java_lang_Class_1ARRAY 9 99 #define XMLVM_VTABLE_IDX_java_lang_Class_getTypeParameters__ 10 100 #define XMLVM_VTABLE_IDX_java_lang_Class_isAnnotationPresent___java_lang_Class 11 101 #define XMLVM_VTABLE_IDX_java_lang_Class_newInstance__ 12 102 #define XMLVM_VTABLE_IDX_java_lang_Class_toString__ 5 103 104 void __INIT_java_lang_Class(); 105 void __INIT_IMPL_java_lang_Class(); 106 void __DELETE_java_lang_Class(void* me, void* client_data); 107 void __INIT_INSTANCE_MEMBERS_java_lang_Class(JAVA_OBJECT me, int derivedClassWillRegisterFinalizer); 108 JAVA_OBJECT __NEW_java_lang_Class(); 109 JAVA_OBJECT __NEW_INSTANCE_java_lang_Class(); 110 void xmlvm_init_native_java_lang_Class(); 111 JAVA_LONG java_lang_Class_GET_serialVersionUID(); 112 void java_lang_Class_PUT_serialVersionUID(JAVA_LONG v); 113 JAVA_OBJECT java_lang_Class_GET_classLoader(); 114 void java_lang_Class_PUT_classLoader(JAVA_OBJECT v); 115 void java_lang_Class_initNativeLayer__(); 116 void java_lang_Class___INIT____java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); 117 JAVA_OBJECT java_lang_Class_getStackClasses___int_boolean(JAVA_INT n1, JAVA_BOOLEAN n2); 118 JAVA_OBJECT java_lang_Class_forName___java_lang_String(JAVA_OBJECT n1); 119 JAVA_OBJECT java_lang_Class_forName___java_lang_String_boolean_java_lang_ClassLoader(JAVA_OBJECT n1, JAVA_BOOLEAN n2, JAVA_OBJECT n3); 120 JAVA_OBJECT java_lang_Class_getClasses__(JAVA_OBJECT me); 121 void java_lang_Class_verify__(JAVA_OBJECT me); 122 // Vtable index: 6 123 JAVA_OBJECT java_lang_Class_getAnnotation___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1); 124 // Vtable index: 7 125 JAVA_OBJECT java_lang_Class_getAnnotations__(JAVA_OBJECT me); 126 JAVA_OBJECT java_lang_Class_getCanonicalName__(JAVA_OBJECT me); 127 JAVA_OBJECT java_lang_Class_getClassLoader__(JAVA_OBJECT me); 128 JAVA_OBJECT java_lang_Class_getClassLoaderImpl__(JAVA_OBJECT me); 129 JAVA_OBJECT java_lang_Class_getComponentType__(JAVA_OBJECT me); 130 JAVA_OBJECT java_lang_Class_getConstructor___java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); 131 JAVA_OBJECT java_lang_Class_getConstructors__(JAVA_OBJECT me); 132 // Vtable index: 8 133 JAVA_OBJECT java_lang_Class_getDeclaredAnnotations__(JAVA_OBJECT me); 134 JAVA_OBJECT java_lang_Class_getDeclaredClasses__(JAVA_OBJECT me); 135 JAVA_OBJECT java_lang_Class_getDeclaredConstructor___java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1); 136 JAVA_BOOLEAN java_lang_Class_arrayEqual___java_lang_Object_1ARRAY_java_lang_Object_1ARRAY(JAVA_OBJECT n1, JAVA_OBJECT n2); 137 JAVA_OBJECT java_lang_Class_getDeclaredConstructors__(JAVA_OBJECT me); 138 JAVA_OBJECT java_lang_Class_getDeclaredField___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); 139 JAVA_OBJECT java_lang_Class_getDeclaredFields__(JAVA_OBJECT me); 140 JAVA_OBJECT java_lang_Class_getDeclaredMethod___java_lang_String_java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); 141 JAVA_OBJECT java_lang_Class_getDeclaredMethods__(JAVA_OBJECT me); 142 JAVA_OBJECT java_lang_Class_getDeclaringClass__(JAVA_OBJECT me); 143 JAVA_OBJECT java_lang_Class_getEnclosingClass__(JAVA_OBJECT me); 144 JAVA_OBJECT java_lang_Class_getEnclosingConstructor__(JAVA_OBJECT me); 145 JAVA_OBJECT java_lang_Class_getEnclosingMethod__(JAVA_OBJECT me); 146 JAVA_OBJECT java_lang_Class_getEnumConstants__(JAVA_OBJECT me); 147 JAVA_OBJECT java_lang_Class_getField___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); 148 JAVA_OBJECT java_lang_Class_getFields__(JAVA_OBJECT me); 149 JAVA_OBJECT java_lang_Class_getGenericInterfaces__(JAVA_OBJECT me); 150 JAVA_OBJECT java_lang_Class_getGenericSuperclass__(JAVA_OBJECT me); 151 JAVA_OBJECT java_lang_Class_getInterfaces__(JAVA_OBJECT me); 152 // Vtable index: 9 153 JAVA_OBJECT java_lang_Class_getMethod___java_lang_String_java_lang_Class_1ARRAY(JAVA_OBJECT me, JAVA_OBJECT n1, JAVA_OBJECT n2); 154 JAVA_OBJECT java_lang_Class_getMethods__(JAVA_OBJECT me); 155 JAVA_INT java_lang_Class_getModifiers__(JAVA_OBJECT me); 156 JAVA_OBJECT java_lang_Class_getName__(JAVA_OBJECT me); 157 JAVA_OBJECT java_lang_Class_getSimpleName__(JAVA_OBJECT me); 158 JAVA_OBJECT java_lang_Class_getProtectionDomain__(JAVA_OBJECT me); 159 JAVA_OBJECT java_lang_Class_getPDImpl__(JAVA_OBJECT me); 160 JAVA_OBJECT java_lang_Class_getResource___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); 161 JAVA_OBJECT java_lang_Class_getResourceAsStream___java_lang_String(JAVA_OBJECT me, JAVA_OBJECT n1); 162 JAVA_OBJECT java_lang_Class_getSigners__(JAVA_OBJECT me); 163 JAVA_OBJECT java_lang_Class_getSuperclass__(JAVA_OBJECT me); 164 // Vtable index: 10 165 JAVA_OBJECT java_lang_Class_getTypeParameters__(JAVA_OBJECT me); 166 JAVA_BOOLEAN java_lang_Class_isAnnotation__(JAVA_OBJECT me); 167 // Vtable index: 11 168 JAVA_BOOLEAN java_lang_Class_isAnnotationPresent___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1); 169 JAVA_BOOLEAN java_lang_Class_isAnonymousClass__(JAVA_OBJECT me); 170 JAVA_BOOLEAN java_lang_Class_isArray__(JAVA_OBJECT me); 171 JAVA_BOOLEAN java_lang_Class_isAssignableFrom___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1); 172 JAVA_BOOLEAN java_lang_Class_isEnum__(JAVA_OBJECT me); 173 JAVA_BOOLEAN java_lang_Class_isInstance___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); 174 JAVA_BOOLEAN java_lang_Class_isInterface__(JAVA_OBJECT me); 175 JAVA_BOOLEAN java_lang_Class_isLocalClass__(JAVA_OBJECT me); 176 JAVA_BOOLEAN java_lang_Class_isMemberClass__(JAVA_OBJECT me); 177 JAVA_BOOLEAN java_lang_Class_isPrimitive__(JAVA_OBJECT me); 178 JAVA_BOOLEAN java_lang_Class_isSynthetic__(JAVA_OBJECT me); 179 // Vtable index: 12 180 JAVA_OBJECT java_lang_Class_newInstance__(JAVA_OBJECT me); 181 // Vtable index: 5 182 JAVA_OBJECT java_lang_Class_toString__(JAVA_OBJECT me); 183 JAVA_OBJECT java_lang_Class_getPackage__(JAVA_OBJECT me); 184 JAVA_OBJECT java_lang_Class_getPackageString__(JAVA_OBJECT me); 185 JAVA_BOOLEAN java_lang_Class_desiredAssertionStatus__(JAVA_OBJECT me); 186 JAVA_OBJECT java_lang_Class_asSubclass___java_lang_Class(JAVA_OBJECT me, JAVA_OBJECT n1); 187 JAVA_OBJECT java_lang_Class_cast___java_lang_Object(JAVA_OBJECT me, JAVA_OBJECT n1); 188 JAVA_OBJECT java_lang_Class_getSignatureAttribute__(JAVA_OBJECT me); 189 void java_lang_Class___CLINIT_(); 190 191 #endif 192