new function dumpclasses()
authorMatthias Kramm <kramm@quiss.org>
Fri, 30 Jan 2009 16:44:24 +0000 (17:44 +0100)
committerMatthias Kramm <kramm@quiss.org>
Fri, 30 Jan 2009 16:44:24 +0000 (17:44 +0100)
lib/as3/registry.c
lib/as3/registry.h

index 0924910..c65bcf5 100644 (file)
@@ -150,6 +150,7 @@ classinfo_t* registry_safefindclass(const char*package, const char*name)
     assert(c);
     return c;
 }
+
 classinfo_t* registry_findclass(const char*package, const char*name)
 {
     assert(classes);
@@ -161,6 +162,20 @@ classinfo_t* registry_findclass(const char*package, const char*name)
         printf("%s.%s->%08x (%s.%s)\n", package, name, c, c->package, c->name);*/
     return c;
 }
+void registry_dumpclasses()
+{
+    int t;
+    for(t=0;t<classes->hashsize;t++) {
+        dictentry_t*e = classes->slots[t];
+        while(e) {
+            dictentry_t*next = e->next;
+            classinfo_t*i = (classinfo_t*)e->key;
+            printf("%s.%s\n", i->package, i->name);
+            e = e->next;
+        }
+    }
+}
+
 memberinfo_t* registry_findmember(classinfo_t*cls, const char*name, char recursive)
 {
     if(!recursive) {
index 49ca7ef..03dc000 100644 (file)
@@ -109,6 +109,7 @@ classinfo_t* memberinfo_asclass(memberinfo_t*f);
 classinfo_t* registry_getclassclass(classinfo_t*a);
 
 classinfo_t* registry_findclass(const char*package, const char*name);
+void registry_dumpclasses();
 memberinfo_t* registry_findmember(classinfo_t*cls, const char*name, char superclasses);
 
 void registry_fill_multiname(multiname_t*m, namespace_t*n, classinfo_t*c);