#include <stdint.h>
+#include "vm/class.h"
#include "vm/global.h"
-
-#include "vmcore/class.h"
-#include "vmcore/linker.h"
-#include "vmcore/utf8.h"
+#include "vm/linker.h"
+#include "vm/utf8.h"
#ifdef __cplusplus
class Primitive {
public:
+ static void initialize_table();
+ static void post_initialize_table();
+
static classinfo* get_class_by_name(utf *name);
static classinfo* get_class_by_type(int type);
static classinfo* get_class_by_char(char ch);
/* primitivetypeinfo **********************************************************/
struct primitivetypeinfo {
- char *cname; /* char name of primitive class */
- utf *name; /* name of primitive class */
- classinfo *class_wrap; /* class for wrapping primitive type */
- classinfo *class_primitive; /* primitive class */
- char *wrapname; /* name of class for wrapping */
- char typesig; /* one character type signature */
- char *arrayname; /* name of primitive array class */
- classinfo *arrayclass; /* primitive array class */
+ const char* cname; /* char name of primitive class */
+ utf* name; /* name of primitive class */
+ classinfo* class_wrap; /* class for wrapping primitive type */
+ classinfo* class_primitive; /* primitive class */
+ const char* wrapname; /* name of class for wrapping */
+ const char typesig; /* one character type signature */
+ const char* arrayname; /* name of primitive array class */
+ classinfo* arrayclass; /* primitive array class */
};
extern primitivetypeinfo primitivetype_table[PRIMITIVETYPE_COUNT];
-/* this function is in src/vmcore/primitivecore.c */
+/* this function is in src/vm/primitivecore.c */
void primitive_init(void);
void primitive_postinit(void);
// Legacy C interface.
classinfo *Primitive_get_class_by_name(utf *name);
classinfo *Primitive_get_class_by_type(int type);
-classinfo *Primitive_get_class_by_char(char ch);
classinfo *Primitive_get_arrayclass_by_name(utf *name);
classinfo *Primitive_get_arrayclass_by_type(int type);