uk.ac.man.cs.rainbow.rapa
Class Loop

java.lang.Object
  |
  +--uk.ac.man.cs.rainbow.rapa.ProcessTerm
        |
        +--uk.ac.man.cs.rainbow.rapa.Loop
All Implemented Interfaces:
Serializable

public class Loop
extends ProcessTerm

RAPA looping construct. Loops, performing the first body for which a guard is true (earlier guards shield later guards) until none of the guards are true.

See Also:
Serialized Form

Constructor Summary
Loop(Value[] bool, ProcessTerm[] proc)
           
 
Method Summary
 boolean equals(Object o)
           
 Value[] getBool()
           
 Value getBool(int i)
           
protected  GINRet getGCL(ProgramCounterFactory factory, int i, int n, int t, Value[] c)
          Get a (g,i,n) triple representing the GCL rules for this process term.
 ProcessTerm[] getProc()
           
 ProcessTerm getProc(int i)
           
 ProcessTerm subst(GeneralSubstitution s)
          Apply a substitution to all arguments in the process term.
 ProcessTerm subst(Substitution s)
          Apply a substitution to all expressions in the process term.
 String toString()
           
 
Methods inherited from class uk.ac.man.cs.rainbow.rapa.ProcessTerm
getGCL, getGCL, getSequenceHead
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Loop

public Loop(Value[] bool,
            ProcessTerm[] proc)
Method Detail

getBool

public Value[] getBool()

getBool

public Value getBool(int i)

getProc

public ProcessTerm[] getProc()

getProc

public ProcessTerm getProc(int i)

toString

public String toString()
Overrides:
toString in class ProcessTerm

equals

public boolean equals(Object o)
Overrides:
equals in class ProcessTerm

subst

public ProcessTerm subst(Substitution s)
Description copied from class: ProcessTerm
Apply a substitution to all expressions in the process term.
Overrides:
subst in class ProcessTerm

subst

public ProcessTerm subst(GeneralSubstitution s)
Description copied from class: ProcessTerm
Apply a substitution to all arguments in the process term.
Overrides:
subst in class ProcessTerm
Following copied from class: uk.ac.man.cs.rainbow.rapa.ProcessTerm
See Also:
Argument

getGCL

protected GINRet getGCL(ProgramCounterFactory factory,
                        int i,
                        int n,
                        int t,
                        Value[] c)
Description copied from class: ProcessTerm
Get a (g,i,n) triple representing the GCL rules for this process term.
Overrides:
getGCL in class ProcessTerm
Following copied from class: uk.ac.man.cs.rainbow.rapa.ProcessTerm
Parameters:
factory - Generator for new program counters.
i - Current thread number.
n - Current PC value.
t - Terminating PC value (-1 for sequence and loop stitching, 0 for thread-end.)
c - Superthread context vector.