as3: fixes to inner method handling
[swftools.git] / lib / as3 / ok / innerfunction.as
index 9f26ace..f5addb9 100644 (file)
@@ -4,9 +4,8 @@ package {
 
     public class Main extends flash.display.MovieClip {
 
-        public function test1()
+        public function test1(y:int, ...rest)
         {
-            var y:int = 0;
             var a:Array = [null];
             a[0] = function() {
                 y = y + 1;
@@ -14,11 +13,10 @@ package {
             a[0]();
             a[0]();
             if(y!=2) trace("error")
-            else     trace("ok 1/2");
+            else     trace("ok 1/3");
         }
-        public function test2()
+        public function test2(y:uint)
         {
-            var y:uint = 0;
             var inc_y = function() {
                 y = y + 1;
             }
@@ -27,12 +25,24 @@ package {
             inc_y();
             
             if(y!=2) trace("error")
-            else     trace("ok 2/2");
+            else     trace("ok 2/3");
         }
+
+        var msg:String = "ok 3/3";
+        public function test3(y:int)
+        {
+            var f = function() {
+                trace(msg);
+            }
+            f();
+        }
+
         public function Main()
         {
-            this.test1()
-            this.test2()
+            this.test1(0,5)
+            this.test2(0)
+            this.test3(0)
+            trace("[exit]");
         }
     }
 }