quest

package quest

Members list

Type members

Classlikes

case class EarlyExit[T](value: T) extends Throwable

Exception used for early exit. Catched by quest

Exception used for early exit. Catched by quest

Attributes

Supertypes
trait Product
trait Equals
class Throwable
trait Serializable
class Object
trait Matchable
class Any
Show all

Helper trait for implementing the Question-Operator syntax for different types.

Helper trait for implementing the Question-Operator syntax for different types.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
trait Resulting[-R]

Helper trait encoding the result of a function in a context function.

Helper trait encoding the result of a function in a context function.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object Resulting

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Resulting.type

Value members

Concrete methods

inline def bail[T : Resulting](value: T)(implicit evidence$1: Resulting[T], support: QuestionOperatorSupport[T] { type Failure; type Success; }): Nothing

Immediately return the quest method returning value. You can also use return, but this doesn't always works in closures.

Immediately return the quest method returning value. You can also use return, but this doesn't always works in closures.

Attributes

inline def quest[T](f: Resulting[T] ?=> T): T

Start a quest block. Inside the block, the question operator can be used.

Start a quest block. Inside the block, the question operator can be used.

Attributes

Extensions

Extensions

extension [T](in: T)
inline def ?[F, S](using support: Aux[T, F, S], resulting: Resulting[F]): S

Return the the success value or return the quest-block with the error value. Must be used inside a quest block

Return the the success value or return the quest-block with the error value. Must be used inside a quest block

Attributes