old ARGVAR handling in stack.c eliminated
[cacao.git] / src / vm / loader.h
index 569c8255e71a4e88c9468348b442254b62a92b8f..1840727d3377f6802712f3589e9ac5e12d00b875 100644 (file)
@@ -26,7 +26,7 @@
 
    Authors: Reinhard Grafl
 
-   $Id: loader.h 2181 2005-04-01 16:53:33Z edwin $
+   $Id: loader.h 2199 2005-04-03 21:42:44Z twisti $
 */
 
 
@@ -168,9 +168,12 @@ inline u4 suck_u4(classbuffer *cb);
 void loader_close(void);
 
 /* class loading functions */
-classinfo *load_class_from_classloader(classinfo *c, java_objectheader *cl);
-classinfo *load_class_bootstrap(classinfo *c);
+bool load_class_from_sysloader(utf *name, classinfo **result);
+bool load_class_from_classloader(utf *name, java_objectheader *cl, classinfo **result);
+bool load_class_bootstrap(utf *name,classinfo **result);
+/* (don't use the following directly:) */
 classinfo *load_class_from_classbuffer(classbuffer *cb);
+bool load_newly_created_array(classinfo *c,java_objectheader *loader);
 
 
 /* retrieve constantpool element */
@@ -196,9 +199,6 @@ methodinfo *class_resolvemethod_approx(classinfo *c, utf *name, utf *dest);
 
 bool class_issubclass(classinfo *sub, classinfo *super);
 
-/* call initializer of class */
-classinfo *class_init(classinfo *c);
-
 /* debug purposes */
 void class_showmethods(classinfo *c);
 void class_showconstantpool(classinfo *c);
@@ -207,25 +207,9 @@ void class_showconstantpool(classinfo *c);
 classinfo *class_primitive_from_sig(char sig);
 
 
-/* return the class indicated by the given descriptor */
-/* (see loader.c for documentation) */
-#define CLASSLOAD_NEW           0      /* default */
-#define CLASSLOAD_LOAD          0x0001
-#define CLASSLOAD_SKIP          0x0002
-#define CLASSLOAD_PANIC         0      /* default */
-#define CLASSLOAD_NOPANIC       0x0010
-#define CLASSLOAD_PRIMITIVE     0      /* default */
-#define CLASSLOAD_NULLPRIMITIVE 0x0020
-#define CLASSLOAD_VOID          0      /* default */
-#define CLASSLOAD_NOVOID        0x0040
-#define CLASSLOAD_NOCHECKEND    0      /* default */
-#define CLASSLOAD_CHECKEND      0x1000
-
-classinfo *class_from_descriptor(char *utf_ptr,char *end_ptr,char **next,int mode);
-int type_from_descriptor(classinfo **cls,char *utf_ptr,char *end_ptr,char **next,int mode);
-
-/* (used by class_new, don't use directly) */
-void class_new_array(classinfo *c);
+/* debug helpers */
+void fprintflags(FILE *fp, u2 f);
+void printflags(u2 f);
 
 #endif /* _LOADER_H */