X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=src%2Fvm%2Floader.h;h=1840727d3377f6802712f3589e9ac5e12d00b875;hb=e8c1205458c3b3a2ab8d250dfe1c9738765928cf;hp=569c8255e71a4e88c9468348b442254b62a92b8f;hpb=fd47d5e80136db91d3b2374c6236dd9e4c667740;p=cacao.git diff --git a/src/vm/loader.h b/src/vm/loader.h index 569c8255e..1840727d3 100644 --- a/src/vm/loader.h +++ b/src/vm/loader.h @@ -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 */