trait
SequenceCache extends AnyRef
Abstract Value Members
-
abstract
def
append[V](key: AnyRef, value: ⇒ V): V
-
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
-
final
def
##(): Int
-
final
def
==(arg0: Any): Boolean
-
final
def
asInstanceOf[T0]: T0
-
def
clone(): AnyRef
-
-
-
def
finalize(): Unit
-
final
def
getClass(): Class[_]
-
def
hashCode(): Int
-
final
def
isInstanceOf[T0]: Boolean
-
-
final
def
notify(): Unit
-
final
def
notifyAll(): Unit
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
-
def
toString(): String
-
final
def
wait(): Unit
-
final
def
wait(arg0: Long, arg1: Int): Unit
-
final
def
wait(arg0: Long): Unit
This cache is used to memoize a sequence of values for a given key
When the cache is "closed" all subsequent calls to "append" will return previously stored values until the last value is reached.
This cache is used to memoize a sequence of effects leading to the computation of an Eff[R, A]
For example:
val action = asyncFork(1 + 1).flatMap(_ => asyncFork(2 + 2)).flatMap(_ => asyncFork(3 + 3))
if this Async action is memoized then the successive computations 1+1, 2+2, 3+3 will not be recomputed