src/share/classes/com/sun/tools/javac/tree/JCTree.java

changeset 609
13354e1abba7
parent 581
f2fdd52e4e87
child 662
b4e7a57af8df
equal deleted inserted replaced
608:472e74211e11 609:13354e1abba7
1019 */ 1019 */
1020 public static class JCTry extends JCStatement implements TryTree { 1020 public static class JCTry extends JCStatement implements TryTree {
1021 public JCBlock body; 1021 public JCBlock body;
1022 public List<JCCatch> catchers; 1022 public List<JCCatch> catchers;
1023 public JCBlock finalizer; 1023 public JCBlock finalizer;
1024 protected JCTry(JCBlock body, List<JCCatch> catchers, JCBlock finalizer) { 1024 public List<JCTree> resources;
1025 protected JCTry(List<JCTree> resources,
1026 JCBlock body,
1027 List<JCCatch> catchers,
1028 JCBlock finalizer) {
1025 this.body = body; 1029 this.body = body;
1026 this.catchers = catchers; 1030 this.catchers = catchers;
1027 this.finalizer = finalizer; 1031 this.finalizer = finalizer;
1032 this.resources = resources;
1028 } 1033 }
1029 @Override 1034 @Override
1030 public void accept(Visitor v) { v.visitTry(this); } 1035 public void accept(Visitor v) { v.visitTry(this); }
1031 1036
1032 public Kind getKind() { return Kind.TRY; } 1037 public Kind getKind() { return Kind.TRY; }
1036 } 1041 }
1037 public JCBlock getFinallyBlock() { return finalizer; } 1042 public JCBlock getFinallyBlock() { return finalizer; }
1038 @Override 1043 @Override
1039 public <R,D> R accept(TreeVisitor<R,D> v, D d) { 1044 public <R,D> R accept(TreeVisitor<R,D> v, D d) {
1040 return v.visitTry(this, d); 1045 return v.visitTry(this, d);
1046 }
1047 @Override
1048 public List<? extends JCTree> getResources() {
1049 return resources;
1041 } 1050 }
1042 @Override 1051 @Override
1043 public int getTag() { 1052 public int getTag() {
1044 return TRY; 1053 return TRY;
1045 } 1054 }
2160 JCLabeledStatement Labelled(Name label, JCStatement body); 2169 JCLabeledStatement Labelled(Name label, JCStatement body);
2161 JCSwitch Switch(JCExpression selector, List<JCCase> cases); 2170 JCSwitch Switch(JCExpression selector, List<JCCase> cases);
2162 JCCase Case(JCExpression pat, List<JCStatement> stats); 2171 JCCase Case(JCExpression pat, List<JCStatement> stats);
2163 JCSynchronized Synchronized(JCExpression lock, JCBlock body); 2172 JCSynchronized Synchronized(JCExpression lock, JCBlock body);
2164 JCTry Try(JCBlock body, List<JCCatch> catchers, JCBlock finalizer); 2173 JCTry Try(JCBlock body, List<JCCatch> catchers, JCBlock finalizer);
2174 JCTry Try(List<JCTree> resources,
2175 JCBlock body,
2176 List<JCCatch> catchers,
2177 JCBlock finalizer);
2165 JCCatch Catch(JCVariableDecl param, JCBlock body); 2178 JCCatch Catch(JCVariableDecl param, JCBlock body);
2166 JCConditional Conditional(JCExpression cond, 2179 JCConditional Conditional(JCExpression cond,
2167 JCExpression thenpart, 2180 JCExpression thenpart,
2168 JCExpression elsepart); 2181 JCExpression elsepart);
2169 JCIf If(JCExpression cond, JCStatement thenpart, JCStatement elsepart); 2182 JCIf If(JCExpression cond, JCStatement thenpart, JCStatement elsepart);

mercurial