as3: improved inner function handling, factor static class code into class initializa...
[swftools.git] / lib / as3 / ok / innerfunctionnest.as
1 package {
2     import flash.display.MovieClip
3     import flash.events.Event
4
5     public class Main extends flash.display.MovieClip {
6         public function Main() {
7             var x:int=0;
8             var f1ok:Boolean = false;
9             var f2ok:Boolean = false;
10             var f3ok:Boolean = false;
11             f1(1);
12             function f1(level:int) {
13                 var y:int = 0;
14                 f2(level+1);
15                 x = y;
16                 f1ok = true;
17                 function f2(level:int) {
18                     var z:int = 0;
19                     f3(level+1);
20                     y = z;
21                     f2ok = true;
22                     function f3(level:int) {
23                         if(level==3)
24                             trace("ok");
25                         z = 4;
26                         f3ok = true;
27                     }
28                 }
29             }
30             if(x!=4 || !f1ok || !f2ok || !f3ok) 
31                 trace("error");
32             trace("[exit]");
33         }
34     }
35 }