01: // This file is part of KeY - Integrated Deductive Software Design
02: // Copyright (C) 2001-2007 Universitaet Karlsruhe, Germany
03: // Universitaet Koblenz-Landau, Germany
04: // Chalmers University of Technology, Sweden
05: //
06: // The KeY system is protected by the GNU General Public License.
07: // See LICENSE.TXT for details.
08: //
09: //
10:
11: package de.uka.ilkd.key.java.statement;
12:
13: import de.uka.ilkd.key.java.NonTerminalProgramElement;
14: import de.uka.ilkd.key.util.ExtList;
15:
16: /**
17: * Branch statement.
18: * @author AL
19: * @author <TT>AutoDoc</TT>
20: */
21:
22: public abstract class BranchStatement extends JavaStatement implements
23: NonTerminalProgramElement {
24:
25: public BranchStatement() {
26:
27: }
28:
29: /**
30: * Constructor for the transformation of COMPOST ASTs to KeY.
31: * @param children the children of this AST element as KeY classes.
32: * May contain: Comments
33: */
34: public BranchStatement(ExtList children) {
35: super (children);
36: }
37:
38: /**
39: * Get the number of branches in this container.
40: * @return the number of branches.
41: */
42:
43: public abstract int getBranchCount();
44:
45: /*
46: Return the branch at the specified index in this node's
47: "virtual" branch array.
48: @param index an index for a branch.
49: @return the branch with the given index.
50: @exception ArrayIndexOutOfBoundsException if <tt>index</tt> is out
51: of bounds.
52: */
53:
54: public abstract Branch getBranchAt(int index);
55: }
|