       1 /*
       2  * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
       3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
       4  *
       5  * This code is free software; you can redistribute it and/or modify it
       6  * under the terms of the GNU General Public License version 2 only, as
       7  * published by the Free Software Foundation.  Oracle designates this
       8  * particular file as subject to the "Classpath" exception as provided
       9  * by Oracle in the LICENSE file that accompanied this code.
      10  *
      11  * This code is distributed in the hope that it will be useful, but WITHOUT
      12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
      13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
      14  * version 2 for more details (a copy is included in the LICENSE file that
      15  * accompanied this code).
      16  *
      17  * You should have received a copy of the GNU General Public License version
      18  * 2 along with this work; if not, write to the Free Software Foundation,
      19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
      20  *
      21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
      22  * or visit www.oracle.com if you need additional information or have any
      23  * questions.
      24  */
      25
      26 package jdk.nashorn.api.tree;
      27
      28 import java.util.List;
      29
      30 /**
      31  * A tree node for a 'try' statement.
      32  *
      33  * For example:
      34  * <pre>
      35  *   try
      36  *       <em>block</em>
      37  *   <em>catches</em>
      38  *   finally
      39  *       <em>finallyBlock</em>
      40  * </pre>
      41  *

      42  * @since 9
      43  */

      44 public interface TryTree extends StatementTree {
      45     /**
      46      * Returns the 'try' block of this 'try' statement.
      47      *
      48      * @return the 'try' block
      49      */
      50     BlockTree getBlock();
      51
      52     /**
      53      * Returns the list of 'catch' statements associated with this 'try'.
      54      *
      55      * @return the list of 'catch' statements associated with this 'try'.
      56      */
      57     List<? extends CatchTree> getCatches();
      58
      59     /**
      60      * Returns the 'finally' block associated with this 'try'. This is
      61      * null if there is no 'finally' block associated with this 'try'.
      62      *
      63      * @return the 'finally' block associated with this 'try'.
      64      */
      65     BlockTree getFinallyBlock();
      66 }
    --- EOF ---