Package org.jcsp.lang
Class AltingChannelOutputIntSymmetricImpl
- java.lang.Object
-
- org.jcsp.lang.Guard
-
- org.jcsp.lang.AltingChannelOutputInt
-
- org.jcsp.lang.AltingChannelOutputIntSymmetricImpl
-
- All Implemented Interfaces:
ChannelOutputInt,MultiwaySynchronisation,Poisonable
class AltingChannelOutputIntSymmetricImpl extends AltingChannelOutputInt implements MultiwaySynchronisation
-
-
Field Summary
Fields Modifier and Type Field Description private AltingBarrierabprivate ChannelOutputIntoutprivate booleansyncDone
-
Constructor Summary
Constructors Constructor Description AltingChannelOutputIntSymmetricImpl(AltingBarrier ab, ChannelOutputInt out)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) booleandisable()Disables the guard for selection.(package private) booleanenable(Alternative alt)Returns true if the event is ready.booleanpending()Returns whether the receiver is committed to read from this channel.voidpoison(int strength)This injects poison into the channel.voidwrite(int i)Write an int to the channel.
-
-
-
Field Detail
-
ab
private final AltingBarrier ab
-
out
private final ChannelOutputInt out
-
syncDone
private boolean syncDone
-
-
Constructor Detail
-
AltingChannelOutputIntSymmetricImpl
public AltingChannelOutputIntSymmetricImpl(AltingBarrier ab, ChannelOutputInt out)
-
-
Method Detail
-
enable
boolean enable(Alternative alt)
Description copied from class:GuardReturns true if the event is ready. Otherwise, this enables the guard for selection and returns false.Note: this method should only be called by the Alternative class
-
disable
boolean disable()
Description copied from class:GuardDisables the guard for selection. Returns true if the event was ready.Note: this method should only be called by the Alternative class
-
write
public void write(int i)
Description copied from interface:ChannelOutputIntWrite an int to the channel.- Specified by:
writein interfaceChannelOutputInt- Parameters:
i- the integer to write to the channel
-
pending
public boolean pending()
Description copied from class:AltingChannelOutputIntReturns whether the receiver is committed to read from this channel.Note: if this returns true, you must commit to write down this channel.
- Specified by:
pendingin classAltingChannelOutputInt- Returns:
- state of the channel.
-
poison
public void poison(int strength)
Description copied from interface:PoisonableThis injects poison into the channel. If the channel was not explicitly constructed to be poisonable or if the strength of poison is not greater than the channel immunity level, the poison will have no effect.- Specified by:
poisonin interfacePoisonable- Parameters:
strength- the strength of the poison (must be >= 0).
-
-