* src/threads/posix/lock.c: Moved to .cpp.
[cacao.git] / src / vm / primitive.hpp
index 7a8d09771a4961b2a655001752acfc437c9dcef6..10501c8c991569187f1b0b6955f55507352f511b 100644 (file)
 
 #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);
@@ -101,14 +103,14 @@ public:
 /* 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             */
 };
 
 
@@ -119,7 +121,7 @@ struct primitivetypeinfo {
 
 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);
 
@@ -127,7 +129,6 @@ 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);