nasty bugs...finally fixed
[IRC.git] / Robust / src / Analysis / Loops / Loops.java
1 // Loops.java, created Wed Jun 13 17:38:43 1998 by bdemsky
2 // Copyright (C) 1999 Brian Demsky <bdemsky@mit.edu>
3 // Licensed under the terms of the GNU GPL; see COPYING for details.
4
5 package Analysis.Loops;
6
7 import java.util.Set;
8 /**
9  * <code>Loops</code> contains the interface to be implemented by objects
10  * generating nested loops trees.
11  *
12  *
13  * @author  Brian Demsky <bdemsky@mit.edu>
14  * @version $Id: Loops.java,v 1.1 2009/03/27 00:59:36 bdemsky Exp $
15  */
16
17 public interface Loops {
18
19     /** Returns entrances to the Loop.
20      *  This is a <code>Set</code> of <code>HCodeElement</code>s.*/
21     public Set loopEntrances();
22
23     /** Returns elements of this loops and all nested loop.
24      *  This is a <code>Set</code> of <code>HCodeElement</code>s.*/
25     public Set loopIncElements();
26     
27     /** Returns elements of this loop not in any nested loop.
28      *  This is a <code>Set</code> of <code>HCodeElement</code>s.*/
29     public Set loopExcElements();
30     
31     /** Returns a <code>Set</code> containing <code>Loops</code> that are
32      *  nested.*/
33     public Set nestedLoops();
34     
35     /** Returns the loop immediately nesting this loop.
36      *  If this is the highest level loop, returns a null pointer.*/
37     public Loops parentLoop();
38 }