JSDOC/Symbol.js
[gnome.introspection-doc-generator] / JSDOC / Symbol.js
index f40b6ce..4c98432 100644 (file)
@@ -63,20 +63,11 @@ Symbol = XObject.define(
         
             
         
-        toObject : function()
+        toJSON : function()
         {
             
-            function array2object(a)
-            {
-                
-                var r = [];
-                a.forEach(function(e) {
-                    r.push(e.toObject());
-                });
-                return r;
-            }
-            
-            var ret = { };
+           
+            var ret = { '*object' : 'Symbol' };
             for (var i in this) {
                 if (Symbol.hide.indexOf(i) > -1) {
                     continue;
@@ -97,15 +88,11 @@ Symbol = XObject.define(
                             case 'requires':
                             case 'returns':
                             case 'see':
-                                ret[i] = array2object(this[i],true); 
-                                continue;
-                                
-                            //objects..
-                            
+                            case 'cfgs': // key val of doctags..
                             case 'comment' :
-                                print(JSON.stringify(this[i]));
-                                ret[i] = this[i].toObject();
-                                continue;
+                                ret[i] = this[i]
+                                continue; 
+                            
                             //skip
                             case 'inheritsFrom':
                             case 'childClasses':
@@ -119,6 +106,7 @@ Symbol = XObject.define(
                         
                     case 'string':
                     case 'number':
+                    case 'boolean':
                         ret[i] = this[i]; continue;
                     default:
                         print("unknown type:" + typeof(this[i]));
@@ -675,6 +663,10 @@ Symbol = XObject.define(
             if (memberOfs.length) {
                 this.memberOf = memberOfs[0].desc;
                 this.memberOf = this.memberOf.replace(/\.prototype\.?/g, "#");
+                this.name = this.name.split('.').pop();
+                this.name = this.name.split('#').pop();
+                this.name = this.memberOf + this.name;
+                this._name = this.memberOf + this._name;
             }
 
             /*~t
@@ -832,4 +824,4 @@ Symbol.fromDump = function(t)
         ns[i] = t[i];
     }
     return ns;
-}
\ No newline at end of file
+}