p

tofu

concurrent

package concurrent

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. concurrent
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Package Members

  1. package impl
  2. package syntax

Type Members

  1. trait Actor[F[_], E, A] extends AnyRef
  2. type Agents[F[_]] = MakeAgent[F, F]
  3. type Atoms[F[_]] = MakeAtom[F, F]
  4. trait ContextT[F[+_], C[_[_]], +A] extends AnyRef

    a ReaderT analog, allowing to have context referring resulting type for instance you can define

    a ReaderT analog, allowing to have context referring resulting type for instance you can define

    case class MyCtx[F[_]](state: Ref[F, Int])
    
    type MyProcess[+A] = ContextT[IO, MyCtx, A]

    here MyProcess is equivalent to a function alias

    type MyProcess[+A] => Ref[MyProcess, Int] => IO[A]

    which would be problematic to define using normal ReaderT, Env or ZIO type constructors

  5. trait ContextTInstances extends ContextTInstancesP
  6. trait ContextTInstancesP extends ContextTInstancesQ
  7. trait ContextTInstancesQ extends ContextTInstancesR
  8. trait ContextTInstancesR extends ContextTInstancesS
  9. trait ContextTInstancesS extends ContextTInstancesT
  10. trait ContextTInstancesT extends ContextTInstancesU
  11. trait ContextTInstancesU extends ContextTInstancesV
  12. trait ContextTInstancesV extends ContextTInstancesW
  13. trait ContextTInstancesW extends ContextTInstancesX
  14. trait ContextTInstancesX extends ContextTInstancesY
  15. trait ContextTInstancesY extends ContextTInstancesZ
  16. trait ContextTInstancesZ extends AnyRef
  17. trait Daemon[F[_], E, A] extends Fiber[F, A]
  18. type Daemon0[F[_]] = Daemon[F, Throwable, Unit]
  19. trait DaemonInstances extends AnyRef
  20. type DaemonTask[F[_]] = Daemon[F, Throwable, Unit]
  21. type DaemonThrow[F[_], A] = Daemon[F, Throwable, A]
  22. trait Daemonic[F[_], E] extends AnyRef
  23. trait DaemonicInstances extends AnyRef
  24. type DaemonicThrow[F[_]] = Daemonic[F, Throwable]
  25. type Deferreds[F[_]] = MakeDeferred[F, F]
  26. trait Gatekeeper[F[_], A] extends AnyRef

    Semaphore-like structure

  27. type MVars[F[_]] = MakeMVar[F, F]
  28. trait MakeAllConcurrent[I[_], F[_]] extends MakeRef[I, F] with MakeMVar[I, F] with MakeSemaphore[I, F] with MakeConcurrent[I, F]
  29. trait MakeConcurrent[I[_], F[_]] extends MakeAtom[I, F] with MakeGatekeeper[I, F, Long] with MakeQVar[I, F] with MakeDeferred[I, F] with MakeAgent[I, F]
  30. trait MakeDeferred[I[_], F[_]] extends AnyRef
  31. trait MakeGatekeeper[I[_], F[_], A] extends AnyRef
  32. trait MakeMVar[I[_], F[_]] extends AnyRef
  33. type MakeMutex[I[_], F[_]] = MakeGatekeeper[I, F, Boolean]
  34. type MakeStoplight[I[_], F[_]] = MakeGatekeeper[I, F, Long]
  35. type Mutex[F[_]] = Gatekeeper[F, Boolean]
  36. type Mutexes[F[_]] = MakeGatekeeper[F, F, Boolean]
  37. trait PolymorphicMakeDefferedInstance extends AnyRef
  38. type QVars[F[_]] = MakeQVar[F, F]
  39. trait ReadWrite[F[_], A] extends AnyRef

    A purely functional ReadWriteLock.

    A purely functional ReadWriteLock.

    It declare that only a single writer at a time can modify the data, and predefined count of readers can concurrently read the data.

    In other cases, it will be semantically blocked until operation become available. All those wishing to access the data are serviced in order.

  40. type SerialAgents[F[_]] = MakeSerialAgent[F, F]
  41. type Stoplight[F[_]] = Gatekeeper[F, Long]
  42. type Stoplights[F[_]] = MakeGatekeeper[F, F, Long]
  43. final class TofuCanceledJoinException[F[_], A] extends InterruptedException
  44. trait TryableDeferreds[F[_]] extends MakeDeferred[F, F]

Deprecated Type Members

  1. trait Mut[F[_], A] extends AnyRef

    simplified form of synchonized mutable variable, that could be satisfied both by MVar and Ref

    simplified form of synchonized mutable variable, that could be satisfied both by MVar and Ref

    Annotations
    @deprecated
    Deprecated

    (Since version 0.5.6) use Atom / qvar.toAtom

Value Members

  1. def newAtom[F[_]](implicit arg0: Atoms[F]): Applier[F, F]
  2. def newDeffered[F[_], A](implicit arg0: Deferreds[F]): F[Deferred[F, A]]
  3. def newGatekeeper[F[_]]: Applier[F, F]
  4. def newQVar[F[_]](implicit arg0: QVars[F]): Applier[F, F]
  5. def newVar[F[_]](implicit arg0: MVars[F]): Applier[F, F]
  6. object Actor
  7. object ContextT extends ContextTInstances
  8. object Daemon extends DaemonInstances

    Probably Infinite processes

  9. object Daemonic extends DaemonicInstances
  10. object Deferreds
  11. object Gatekeeper
  12. object MVars
  13. object MakeDeferred extends PolymorphicMakeDefferedInstance
  14. object MakeGatekeeper
  15. object MakeMVar
  16. object MakeMutex
  17. object MakeStoplight
  18. object Mut
  19. object Mutexes
  20. object ReadWrite
  21. object Stoplights

Deprecated Value Members

  1. val ConcurrentOps: traverse.type
    Annotations
    @deprecated
    Deprecated

    (Since version 0.1.1) use concurrent.syntax.traverse

Inherited from AnyRef

Inherited from Any

Ungrouped