in scala.actors
trait Actor

abstract trait Actor
extends java.lang.Object
with scala.actors.OutputChannel[scala.Any]
with scala.ScalaObject

This class provides (together with Channel) an implementation of event-based actors.

The main ideas of our approach are explained in the paper
Event-Based Programming without Inversion of Control, Philipp Haller, Martin Odersky Proc. JMLC 2006

Version:
0.9.0
Author:
Philipp Haller
Direct Known Subclasses:
ActorProxy

Class Summary
private class ExitSuspendLoop

Val Summary
val in : scala.actors.Channel[scala.Any]

Var Summary
var continuation : scala.PartialFunction[scala.Any, scala.Unit]

var detachActor : (scala.PartialFunction[scala.Any, scala.Unit]) => scala.Unit

var exitReason : java.lang.String

var kill : () => scala.Unit

var resumeActor : () => scala.Unit

var suspendActor : () => scala.Unit

var suspendActorFor : (scala.Long) => scala.Unit

var timeoutPending : scala.Boolean

var trapExit : scala.Boolean

Def Summary
def ! (msg: scala.Any) : scala.Unit
Sends msg to this actor (asynchronous).
def !? (msg: scala.Any) : scala.Any
Sends msg to this actor and awaits reply (synchronous).
abstract def act : scala.Unit
The behavior of an actor is specified by implementing this abstract method. Note that the preferred way to create actors is through the actor method defined in object Actor.
def defaultDetachActor : (scala.PartialFunction[scala.Any, scala.Unit]) => scala.Unit

def exit (reason: java.lang.String) : scala.Unit

Terminates execution of self with the following effect on linked actors:

For each linked actor a with trapExit set to true, send message Exit(self, reason) to a.

For each linked actor a with trapExit set to false (default), call a.exit(reason) if !reason.equals("normal").


def exit (from: scala.actors.Actor, reason: java.lang.String) : scala.Unit

def exitLinked : scala.Unit

def exitLinked (reason: java.lang.String) : scala.Unit

def exitLinked (reason: java.lang.String, exitMarks: scala.collection.mutable.HashSet[scala.actors.Actor]) : scala.Unit

def forward (msg: scala.Any) : scala.Unit

def freshReply : scala.Unit

def link (body: => scala.Unit) : scala.actors.Actor
Links self to actor defined by body.
def link (to: scala.actors.Actor) : scala.actors.Actor
Links self to actor to.
def linkTo (to: scala.actors.Actor) : scala.Unit

def popSender : scala.Unit

def pushSender (s: scala.actors.Actor) : scala.Unit

def reply : scala.actors.Channel[scala.Any]

def resetActor : scala.Unit

def rpc [a] (msg: a) : a

def scheduleActor (f: scala.PartialFunction[scala.Any, scala.Unit], msg: scala.Any) : scala.Unit

def sender : scala.actors.Actor

def start : scala.Unit
Starts this actor.
def tick : scala.Unit

def unlink (from: scala.actors.Actor) : scala.Unit
Unlinks self from actor from.
def unlinkFrom (from: scala.actors.Actor) : scala.Unit

Def inherited from scala.actors.OutputChannel[scala.Any]
! , forward
Val Detail
val in : scala.actors.Channel[scala.Any]

Var Detail
var continuation : scala.PartialFunction[scala.Any, scala.Unit]

var detachActor : (scala.PartialFunction[scala.Any, scala.Unit]) => scala.Unit

var exitReason : java.lang.String

var kill : () => scala.Unit

var resumeActor : () => scala.Unit

var suspendActor : () => scala.Unit

var suspendActorFor : (scala.Long) => scala.Unit

var timeoutPending : scala.Boolean

var trapExit : scala.Boolean

Def Detail
def ! (msg: scala.Any): scala.Unit
Sends msg to this actor (asynchronous).

def !? (msg: scala.Any): scala.Any
Sends msg to this actor and awaits reply (synchronous).

abstract def act : scala.Unit
The behavior of an actor is specified by implementing this abstract method. Note that the preferred way to create actors is through the actor method defined in object Actor.

def defaultDetachActor : (scala.PartialFunction[scala.Any, scala.Unit]) => scala.Unit

def exit (reason: java.lang.String): scala.Unit

Terminates execution of self with the following effect on linked actors:

For each linked actor a with trapExit set to true, send message Exit(self, reason) to a.

For each linked actor a with trapExit set to false (default), call a.exit(reason) if !reason.equals("normal").


def exit (from: scala.actors.Actor, reason: java.lang.String): scala.Unit

def exitLinked : scala.Unit

def exitLinked (reason: java.lang.String): scala.Unit

def exitLinked (reason: java.lang.String, exitMarks: scala.collection.mutable.HashSet[scala.actors.Actor]): scala.Unit

def forward (msg: scala.Any): scala.Unit

def freshReply : scala.Unit

def link (body: => scala.Unit): scala.actors.Actor
Links self to actor defined by body.

def link (to: scala.actors.Actor): scala.actors.Actor
Links self to actor to.
Parameters:
to - ...
Returns:
...

def linkTo (to: scala.actors.Actor): scala.Unit

def popSender : scala.Unit

def pushSender (s: scala.actors.Actor): scala.Unit

def reply : scala.actors.Channel[scala.Any]

def resetActor : scala.Unit

def rpc [a](msg: a): a

def scheduleActor (f: scala.PartialFunction[scala.Any, scala.Unit], msg: scala.Any): scala.Unit

def sender : scala.actors.Actor

def start : scala.Unit
Starts this actor.

def tick : scala.Unit

def unlink (from: scala.actors.Actor): scala.Unit
Unlinks self from actor from.

def unlinkFrom (from: scala.actors.Actor): scala.Unit