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.logic;
12:
13: import de.uka.ilkd.key.java.NonTerminalProgramElement;
14:
15: /**
16: * this interface is implemented by program elements that may be matched
17: * by the inactive program prefix
18: */
19: public interface ProgramPrefix extends NonTerminalProgramElement {
20:
21: /** returns the number of prefix starting with this element
22: * @return the number of prefix starting with this element
23: */
24: int getPrefixLength();
25:
26: /** returns the i-th prefix element */
27: ProgramPrefix getPrefixElementAt(int i);
28:
29: /** returns an array with all prefix elements starting at
30: * this element */
31: ArrayOfProgramPrefix getPrefixElements();
32:
33: /** returns the position of the first active child */
34: PosInProgram getFirstActiveChildPos();
35:
36: }
|