Converts from :class:`Result` [T, E] to :class:`option.option_.Option` [T].

        Returns:
            :class:`Option` containing the success value if `self` is
            :meth:`Result.Ok`, otherwise :data:`option.option_.NONE`.

        Examples:
            >>> Ok(1).ok()
            Some(1)
            >>> Err(1).ok()
            NONE

def ok(self) -> Option[T]:
        """
        Converts from :class:`Result` [T, E] to :class:`option.option_.Option` [T].

        Returns:
            :class:`Option` containing the success value if `self` is
            :meth:`Result.Ok`, otherwise :data:`option.option_.NONE`.

        Examples:
            >>> Ok(1).ok()
            Some(1)
            >>> Err(1).ok()
            NONE
        """
        return Option.Some(cast(T, self._val)) if self._is_ok else cast(Option[T], NONE)