JSDOC/Walker2.js
[gnome.introspection-doc-generator] / JSDOC / ScopeParser.js
index 79ff103..bc695ef 100644 (file)
@@ -328,6 +328,7 @@ ScopeParser.prototype = {
 
                 case "PUNC.LEFT_CURLY": // {
                 case "PUNC.LEFT_PAREN": // (    
+                case "PUNC.LEFT_BRACE": // [
                     //print('SCOPE-CURLY/PAREN:' + token.toString());
                     //println("<i>"+token.data+"</i>");
                     var curTS = this.ts;
@@ -348,7 +349,7 @@ ScopeParser.prototype = {
                             // key value..
                             
                             this.ts = new TokenStream(token.props[prop].val);
-                            this.parseScope(false);
+                            this.parseExpression();
                             
                         }
                         this.ts = curTS;
@@ -628,20 +629,23 @@ ScopeParser.prototype = {
                         case '{': //Token.LC:
                         case '[': //Token.LB:
                             //print('SCOPE-CURLY/PAREN/BRACE:' + token.toString());
+                           // print('SCOPE-CURLY/PAREN/BRACE:' + JSON.stringify(token, null,4));
                             //println("<i>"+token.data+"</i>");
                             var curTS = this.ts;
                             if (token.props) {
                                 
                                 for (var prop in token.props) {
-                                    if (token.props[prop].val.data == 'function') {
+                                    if (token.props[prop].val[0].data == 'function') {
                                         // parse a function..
-                                        this.parseFunctProp(token.props[prop]);
+                                        this.ts = new TokenStream(token.props[prop].val);
+                                        this.ts.nextTok();
+                                        this.parseFunctionDeclaration();
                                         continue;
                                     }
                                     // key value..
                                     
                                     this.ts = new TokenStream(token.props[prop].val);
-                                    this.parseScope(false);
+                                    this.parseExpression();
                                     
                                 }
                                 this.ts = curTS;