SHOW:
|
|
- or go back to the newest paste.
1 | sealed trait DB[T, InnerContext[_], HanderReturnType] { | |
2 | type InnerHandler = Handler[HanderReturnType, InnerContext] | |
3 | type OuterHandler = Handler[InnerContext[HanderReturnType], Try] | |
4 | type Mapped[T] = DB[T, InnerContext, HanderReturnType] | |
5 | ||
6 | val value: Try[InnerContext[T]] | |
7 | ||
8 | def map[R](f: T => R): Mapped[R] | |
9 | def flatMap[R](f: T => Mapped[R]): Mapped[R] | |
10 | ||
11 | def purify: DB.Pure[InnerContext[T]] = DbPure(value) | |
12 | def reify: Try[InnerContext[T]] = value | |
13 | ||
14 | - | def run[R](f: T => R = _)(implicit innerHandler: InnerHandler, outerHandler: OuterHandler): R |
14 | + | def run[R <: HanderReturnType](f: T => R)(implicit innerHandler: InnerHandler, outerHandler: OuterHandler): R |
15 | } |