JSDOC/Collapse.vala
[gnome.introspection-doc-generator] / JSDOC / Collapse.vala
index a92260e..ce45d5f 100644 (file)
 
 namespace JSDOC {
 
-public class  Collapse : TokenStream  {
+       public class  Collapse : TokenStream  {
 
 
-       public Collapse(TokenArray ar) 
-       {
-        Collapse.superclass.constructor.call(this, ar);
-        
-        this.spaces();
-        ar = this.collapse(this.tokens);
-        
-        this.tokens = ar;
-        
-       // console.dump(ar);
-        
-    }, 
-    TokenStream, 
-    {
+               public Collapse(Gee.ArrayList<Token> tokens) 
+               {
+                   parent(ar);;
+                   
+                   this.spaces();
+                   
+                   ar = this.collapse(this.tokens);
+                   
+                   this.tokens = ar;
+                   
+                  // console.dump(ar);
+                   
+               }
+               
+               // put spaces into prefix of tokens..
     
-        spaces : function () {
-            var ar = [];
-            var pref = [];
+        void spaces () 
+        {
+            var ar = new Gee.ArrayList<Token>()
+            var pref =  new Gee.ArrayList<Token>();
             
-            var tok;
+
             
-            for (var i = 0; i < this.tokens.length; i ++) {
-                tok = this.tokens[i];
+            for (var i = 0; i < this.tokens.size; i ++) {
+                var tok = this.tokens[i];
                 if (tok.is("COMM") || tok.is("WHIT")) {
-                    pref.push(tok);
+                    pref.add(tok);
                     continue;
                 }
                 tok.prefix = '';
-                if (pref.length) {
-                    pref.forEach( function(e) {
-                        if (!e) {
-                            return;
-                        }
+                if (pref.size > 0) {
+                       foreach(e in pref) {
                         tok.prefix += e.data;
-                    })
+                    }
+                    pref =  new Gee.ArrayList<Token>(); // reset pref..
                 }
                 
-                ar.push(tok);
-                pref=  [];
+                ar.add(tok);
+                
+
                 
             }
             this.tokens = ar;
             
         },
-        collapse : function(ar) {
+        
+        
+        
+        void  collapse(ar) 
+        {
             
-            var st = new  TokenStream(ar);
-            var ret = [];
+            var st = new TokenStream(ar);
+            var ret = new Gee.ArrayList<Token>();
             
             while (true) {
                 var  tok = st.look(1,true);