case class Chan(s: String) extends PiObject with Product with Serializable
A pi-calculus channel.
These may be used for communication, they may be communicated themselves, and they are also used as variables.
For instance, channels are used as variables to create patterns of expected inputs and outputs.
For example, a process may expect a pair PiPair(Chan(X),Chan(Y))
as input.
Each of the channels X
and Y
will (should) eventually be instantiated to a resource.
e.g. receiving input a(X).0
from a matching output 'a<"Hello">.0
creates the instatiation
X --> "Hello"
.
We apply these instantiations to the pattern PiPair(Chan(X),Chan(Y))
until the
pattern contains no channels/variables. We then know that the input is available and
the process can be executed (pending all other inputs as well).
A process would never receive and/or do anything useful with a pi-calculus channel.
- s
The name of the channel.
- Alphabetic
- By Inheritance
- Chan
- Serializable
- Serializable
- Product
- Equals
- PiObject
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
Chan(s: String)
- s
The name of the channel.
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- def ->[B](y: B): (Chan, B)
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
- def ensuring(cond: (Chan) ⇒ Boolean, msg: ⇒ Any): Chan
- def ensuring(cond: (Chan) ⇒ Boolean): Chan
- def ensuring(cond: Boolean, msg: ⇒ Any): Chan
- def ensuring(cond: Boolean): Chan
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- def formatted(fmtstr: String): String
-
lazy val
frees: Seq[Chan]
Returns the list of free variables (channels) in the PiObject.
-
def
fresh(f: Int): Chan
Updates the PiObject so that all free variables (channels) are fresh.
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
val
isGround: Boolean
Checks if the PiObject contains free variables (channels).
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- val s: String
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
- def →[B](y: B): (Chan, B)