|
Scala example source code file (Combinators.scala)
The Scala Combinators.scala source code/* __ *\ ** ________ ___ / / ___ Scala API ** ** / __/ __// _ | / / / _ | (c) 2005-2011, LAMP/EPFL ** ** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** ** /____/\___/_/ |_/____/_/ | | ** ** |/ ** \* */ // $Id$ package scala.actors private[actors] trait Combinators { /** * Enables the composition of suspendable closures using `andThen`, * `loop`, `loopWhile`, etc. */ implicit def mkBody[a](body: => a): Actor.Body[a] /** * Repeatedly executes `body`. * * @param body the block to be executed */ def loop(body: => Unit): Unit = body andThen loop(body) /** * Repeatedly executes `body` while the condition `cond` is `true`. * * @param cond the condition to test * @param body the block to be executed */ def loopWhile(cond: => Boolean)(body: => Unit): Unit = if (cond) { body andThen loopWhile(cond)(body) } else continue /** * Continues with the execution of the closure registered as * continuation following `andThen`. Continues with the execution * of the next loop iteration when invoked inside the body of `loop` * or `loopWhile`. */ def continue(): Unit = throw new KillActorControl } Other Scala examples (source code examples)Here is a short list of links related to this Scala Combinators.scala source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.