new test for paper example
[IRC.git] / Robust / src / Tests / OwnershipAnalysisTest / test04 / test04.java
1
2 public class Parameter {
3   flag w;
4   Node root;
5   public Parameter() {}
6 }
7
8 public class Node {
9   HashSet neighbors;
10   
11   public Node() {
12     neighbors = new HashSet();
13   }
14   
15   public static Node makeNode() {
16     return new Node();
17   }
18   
19   public addNeighbor( Node n ) {
20     neighbors.add( n );
21   }
22 }
23
24 task Startup( StartupObject s{ initialstate } ) {
25   
26   Parameter p1 = new Parameter();
27   
28   taskexit( s{ !initialstate } );
29 }
30
31
32 task MakeGraph( Parameter p1{ !w } ) {
33
34   Parameter pKeep0;
35   Parameter pKeep1;
36   Parameter pKeep2;
37   Parameter p2;
38
39   while( false ) {  
40     pKeep2 = pKeep1;
41     pKeep1 = pKeep0;
42     pKeep0 = p2;
43
44     p2 = new Parameter();    
45
46     Node n1 = Node.makeNode();
47     Node n2 = Node.makeNode();
48     Node n3 = Node.makeNode();
49     
50     n1.addNeighbor( n2 );
51     n2.addNeighbor( n3 );
52     n3.addNeighbor( n1 );
53     
54     p2.root = n1;
55   }
56
57   taskexit( p1{ w } );
58 }