JSDOC/ScopeParser.js
[gnome.introspection-doc-generator] / JSDOC / ScopeParser.js
index ee8f1c7..7d1c606 100644 (file)
@@ -608,7 +608,7 @@ ScopeParser.prototype = {
                             if (this.braceNesting == expressionBraceNesting &&
                                     bracketNesting == 0 &&
                                     parensNesting == 0) {
-                                print(scopeIndent + "<< EXIT EXPRESSION");
+                                print("<< EXIT EXPRESSION");
                                 this.expN--;
                                 return;
                             }
@@ -631,13 +631,23 @@ ScopeParser.prototype = {
                             break;
 
                         case '[': //Token.LB:
-                            bracketNesting++;
+                        
+                            var ts = this.ts;
+                            var _this = this;
+                            token.items.forEach(function(ns) {
+                                 print("EXPR-PUNC[:" + JSON.stringify(ns, null, 4));
+                                _this.ts = new TokenStream(ns);
+                                _this.ts.cursor--;
+                                _this.parseExpression();
+                            });
+                            this.ts = ts;
+                            
                             break;
-
+/*
                         case ']': //Token.RB:
                             bracketNesting--;
                             break;
-
+*/
                         case '(': //Token.LP:
                             parensNesting++;
                             break;
@@ -734,7 +744,7 @@ ScopeParser.prototype = {
                     
                     
                     //println("<B>EID</B>");
-                 case 'KEYW':   
+                case 'KEYW':   
                     print("EXPR-KEYW:" + JSON.stringify(token, null, 4));
                     if (token.name == "FUNCTION") {
                         
@@ -771,11 +781,13 @@ ScopeParser.prototype = {
                         }
                         break;
                     } 
-                   
+                default: 
+                    print("EXPR-SKIP:" + JSON.stringify(token, null, 4));
+                    break;
             }
             if (!this.ts.nextTok()) break;
         }
-        print(scopeIndent + "<< EXIT EXPRESSION");
+        print("<< EXIT EXPRESSION");
         this.expN--;
     },