+classinfo_t voidclass = {
+ INFOTYPE_CLASS,0,0,ACCESS_PACKAGE, "", "void", 0, 0, 0
+};
+classinfo_t* registry_getvoidclass() {
+ return &voidclass;
+}
+
+namespace_t access2namespace(U8 access, char*package)
+{
+ namespace_t ns;
+ ns.access = access;
+ ns.name = package;
+ return ns;
+}
+
+char* infotypename(slotinfo_t*s)
+{
+ if(s->kind == INFOTYPE_CLASS) return "class";
+ else if(s->kind == INFOTYPE_VAR) return "var";
+ else if(s->kind == INFOTYPE_METHOD) return "function";
+ else return "object";
+}
+
+void slotinfo_dump(slotinfo_t*s)
+{
+ if(s->package[0]) {
+ printf("%s %s.%s", infotypename(s), s->package, s->name);
+ } else {
+ printf("%s %s", infotypename(s), s->name);
+ }
+ if(s->kind == INFOTYPE_CLASS) {
+ classinfo_t*c = (classinfo_t*)s;
+ }
+ else if(s->kind == INFOTYPE_VAR) {
+ varinfo_t*v = (varinfo_t*)s;
+ printf(":%s", v->type?v->type->name:"*");
+ if(v->value)
+ printf("=%s", constant_tostring(v->value));
+ if(v->slot)
+ printf(" (slot:%d)", v->slot);
+ }
+ else if(s->kind == INFOTYPE_METHOD) {
+ methodinfo_t*m = (methodinfo_t*)s;
+ }
+ else {
+ }
+ printf("\n");
+}