code: def map(self, op: Callable[[T], U]) -> 'Union[Result[U, E], Result[T, E]]':
          
          return self._type.Ok(op(cast(T, self._val))) if self._is_ok else self
docs: Applies a function to the contained :meth:`Result.Ok` value.
  
          Args:
              op: The function to apply to the :meth:`Result.Ok` value.
  
          Returns:
              A :class:`Result` with its success value as the function result
              if `self` is an :meth:`Result.Ok` value, otherwise returns
              `self`.
  
          Examples:
              >>> Ok(1).map(lambda x: x * 2)
              Ok(2)
              >>> Err(1).map(lambda x: x * 2)
              Err(1)