libretto

package libretto

Type members

Classlikes

abstract class AbstractStarterKit(val dsl: ScalaDSL, val runner0: (ScheduledExecutorService, Executor) => ScalaRunner[ScalaDSL, [T] =>> Future[T]])
sealed trait Async[A]
Companion
object
object Async
Companion
class
Companion
class
class BinarySearchTree[DSL <: ScalaDSL, CLib <: CoreLib[DSL], SLib <: ScalaLib[DSL, CLib]](val dsl: DSL, val coreLib: CLib & CoreLib[DSL], val scalaLib: SLib & ScalaLib[DSL, CLib & CoreLib[DSL]])
Companion
object
trait ClosedDSL extends CoreDSL

Extension of CoreDSL that adds support for "functions as data" (=⚬). In other words, it makes CoreDSL.-⚬ a ''closed'' monoidal category.

object ClosedLib
Companion
class
class ClosedLib[DSL <: ClosedDSL, CLib <: CoreLib[DSL]](val dsl: DSL, val coreLib: CLib & CoreLib[DSL])
Companion
object
trait CoreDSL
object CoreLib
Companion
class
class CoreLib[DSL <: CoreDSL](val dsl: DSL)
Companion
object
object CoreStreams
Companion
class
class CoreStreams[DSL <: CoreDSL, Lib <: CoreLib[DSL]](val dsl: DSL, val lib: Lib & CoreLib[DSL])
Companion
object
trait CrashDSL extends CoreDSL
object CrashLib
Companion
class
class CrashLib[DSL <: CrashDSL, Lib <: CoreLib[DSL]](val dsl: DSL, val lib: Lib & CoreLib[DSL])
Companion
object
case class Equal[A](a1: A, a2: A)

Used to document laws in a typechecked manner. The purpose of expression Equal(f, g) is just to ensure that f and g compile and are of the same type.

trait ForAll[+F[_]]
trait Runner[DSL <: CoreDSL, F[_]]
trait ScalaDSL extends TimerDSL with CrashDSL

Extension of CoreDSL, TimerDSL and CrashDSL that adds support for manipulating Scala values via pure Scala functions.

object ScalaLib
Companion
class
class ScalaLib[DSL <: ScalaDSL, CoreLib <: CoreLib[DSL]](val dsl: DSL, val coreLib: CoreLib & CoreLib[DSL])
Companion
object
trait ScalaRunner[DSL <: ScalaDSL, F[_]] extends Runner[DSL, F]
object ScalaStreams
Companion
class
class ScalaStreams[DSL <: ScalaDSL, Lib <: CoreLib[DSL], SLib <: ScalaLib[DSL, Lib], Streams <: CoreStreams[DSL, Lib]](val dsl: DSL, val coreLib: Lib & CoreLib[DSL], val scalaLib: SLib & ScalaLib[DSL, Lib & CoreLib[DSL]], val coreStreams: Streams & CoreStreams[DSL, Lib & CoreLib[DSL]])
Companion
object
abstract class StarterApp extends StarterAppBase
abstract class StarterAppBase
abstract class StarterAppScala[A] extends StarterAppBase
object StarterKit extends StarterKit
Companion
class
Companion
object
trait TimerDSL extends CoreDSL
object unapply

Types

type [F[_]] = ForAll[F]