def get_or_raise(self) -> Task[R]: return Task(self.__async_get_or_raise())
def to_task(self) -> Task[Either[L, R]]: return Task(self.__value)
def get_or_call(self, fn: Callable[[L], R]) -> Task[R]: return Task(self.__async_get_or_call(fn))
def get_or(self, value: R) -> Task[R]: return Task(self.__async_get_or(value))
def match(self, on_left: Callable[[L], T], on_right: Callable[[R], T]) -> Task[T]: return Task(self.__async_match(on_left, on_right))
def to_maybe(self) -> Task[Maybe[T]]: return Task(self.__value)
def get_or_call(self, fn: Callable[[], T]) -> Task[T]: return Task(self.__async_get_or_call(fn))