Shift

object Shift extends LowPriorityShift0
trait LowPriorityShift0
trait LowPriorityShift1
class Object
trait Matchable
class Any

Type members

Classlikes

trait StackSafeShiftDsl[Domain, NewDomain, Value] extends Dsl[Shift[Domain, Value], NewDomain, Value]

Value members

Concrete methods

def apply[R, A]: R !! A =:= Shift[R, A]

Givens

Givens

given IsKeyword_Shift_Value[Domain, Value]: IsKeyword[Shift[Domain, Value], Value]

Inherited givens

given `SameDomainStackSafeShiftDsl_!!_Value`: SameDomainStackSafeShiftDsl[LeftDomain !! RightDomain, Value]
Inherited from
LowPriorityShift0

Extensions

Extensions

extension [C, R, A](fa: C)
transparent inline
def unary_!(using inline notKeyword: NotGiven[C <:< Keyword], inline asContinuation: C <:< R !! A): A

Implicits

Implicits

@inline
implicit
def stackSafeThrowableShiftDsl[LeftDomain, Value]: SameDomainStackSafeShiftDsl[LeftDomain !! Throwable, Value]
@inline
implicit
def tailRecShiftDsl[R, Value]: SameDomainStackSafeShiftDsl[TailRec[R], Value]
@inline
implicit
def taskStackSafeShiftDsl[LeftDomain, RightDomain, Value]: StackSafeShiftDsl[LeftDomain !! Throwable, LeftDomain !! Throwable !! RightDomain, Value]

Inherited implicits

@inline
implicit
def stackUnsafeShiftDsl[Domain, Value]: Dsl[Shift[Domain, Value], Domain, Value]
Inherited from
LowPriorityShift1