ExposedEval

case
class ExposedEval[X, U, S, V, Y](pre: X => (S, U), post: (S, V) => Y)

An datastructure describing an computation which at some points delegates some work to the user. The user receives an intermediate state (type SI) and a value of type X by calling pre. The value needs to be transformed into another of type Y that is fed back to the computation, along with the intermediate state with the functions post. e.g. pseudo-code to run the whole computation:

(si, x) = pre() y = f(x) result = post(si, y)

trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Value members

Concrete methods

def run(f: U => V)(s: X): Y

Inherited methods

def productElementNames: Iterator[String]
Inherited from
Product
def productIterator: Iterator[Any]
Inherited from
Product