42 import java.util.Map; |
42 import java.util.Map; |
43 import jdk.nashorn.internal.codegen.Frame; |
43 import jdk.nashorn.internal.codegen.Frame; |
44 import jdk.nashorn.internal.codegen.MethodEmitter.Label; |
44 import jdk.nashorn.internal.codegen.MethodEmitter.Label; |
45 import jdk.nashorn.internal.ir.annotations.Ignore; |
45 import jdk.nashorn.internal.ir.annotations.Ignore; |
46 import jdk.nashorn.internal.ir.annotations.ParentNode; |
46 import jdk.nashorn.internal.ir.annotations.ParentNode; |
47 import jdk.nashorn.internal.ir.annotations.Reference; |
|
48 import jdk.nashorn.internal.ir.visitor.NodeVisitor; |
47 import jdk.nashorn.internal.ir.visitor.NodeVisitor; |
49 import jdk.nashorn.internal.runtime.Source; |
48 import jdk.nashorn.internal.runtime.Source; |
50 |
49 |
51 /** |
50 /** |
52 * IR representation for a list of statements and functions. All provides the |
51 * IR representation for a list of statements and functions. All provides the |
53 * basis for script body. |
52 * basis for script body. |
54 * |
53 * |
55 */ |
54 */ |
56 public class Block extends Node { |
55 public class Block extends Node { |
57 /** Parent context */ |
56 /** Parent context */ |
58 @ParentNode @Reference |
57 @ParentNode @Ignore |
59 private Block parent; |
58 private Block parent; |
60 |
59 |
61 /** Owning function. */ |
60 /** Owning function. */ |
62 @Ignore @Reference |
61 @Ignore //don't print it, it is apparent in the tree |
63 protected FunctionNode function; |
62 protected FunctionNode function; |
64 |
63 |
65 /** List of statements */ |
64 /** List of statements */ |
66 protected List<Node> statements; |
65 protected List<Node> statements; |
67 |
66 |