in scala/concurrent/pilib
class Chan

class Chan[a]()
extends UChan
with ScalaObject
with (a) => Product[a]

Name on which one can emit, receive or that can be emitted or received during a communication.

Method Summary
  def *[b](f: (a) => b): GP[b]
     Syntactic sugar for input.
  def apply(v: a): Product[a]
     Syntactic sugar for output.
  def attach(f: (a) => Unit): Unit
     Attach a function to be evaluated at each communication event on this channel.
  var defaultValue: a
  def input[b](c: (a) => b): GP[b]
     Creates an input guarded process.
  def output[b](v: a, c: () => b): GP[b]
     Creates an input guarded process.
  def read: a
     Blocking read.
  def write(x: a): Unit
     Blocking write.

Methods inherited from java/lang/Object-class
clone, eq, equals, finalize, getClass, hashCode, ne, notify, notifyAll, synchronized, toString, wait, wait, wait

Methods inherited from scala/Any-class
!=, ==, asInstanceOf, isInstanceOf, match

Methods inherited from scala/ScalaObject-class
getScalaType

Methods inherited from scala/concurrent/pilib/UChan-class
log

Method Detail

defaultValue

  var defaultValue: a

input

  def input[b](c: (a) => b): GP[b]
Creates an input guarded process.

output

  def output[b](v: a, c: () => b): GP[b]
Creates an input guarded process.

read

  def read: a
Blocking read.

write

  def write(x: a): Unit
Blocking write.

*

  def *[b](f: (a) => b): GP[b]
Syntactic sugar for input.

apply

  def apply(v: a): Product[a]
Syntactic sugar for output.

attach

  def attach(f: (a) => Unit): Unit
Attach a function to be evaluated at each communication event on this channel. Replace previous attached function.