Sha256: 2053bb9f284c1bdab087189efee89fcabc23dca118ad4f35d58778bca41e5c4a

Contents?: true

Size: 639 Bytes

Versions: 3

Compression:

Stored size: 639 Bytes

Contents

import scala.actors.Actor

case class Mult(value: Int)
case class Add(value: Int)
case class Something(value: Int)
case object Stop

class MyActor extends Actor {
   def act() {
      loop {
         receive {
            case Mult(value) => println(value + " * " + value + " = " + value * value)
            case Add(value) => println(value + " + " + value + " = " + (value + value))
            case Stop => exit()
            case msg => println("Don't know what to do with message :" + msg)
         }
      }
   }
}

val myActor = new MyActor()
myActor.start

myActor ! Mult(4)
myActor ! Add(4)
myActor ! Something(4)

myActor ! Stop

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
ara-0.0.3 examples/actor.scala
ara-0.0.2 examples/actor.scala
ara-0.0.1 examples/actor.scala