docstr: ivy.Array instance method variant of ivy.unfold. This method simply
  wraps the function, and so the docstring for ivy.unfold also applies to
  this method with minimal changes.
  
  Parameters
  ----------
  self
      input tensor to be unfolded
  mode
      indexing starts at 0, therefore mode is in ``range(0, tensor.ndim)``
  out
      optional output array, for writing the result to.
  
  Returns
  -------
  ret
      unfolded_tensor of shape ``(tensor.shape[mode], -1)``
code: def unfold(
      self: Union[ivy.Array, ivy.NativeArray],
      /,
      mode: Optional[int] = 0,
      *,
      out: Optional[ivy.Array] = None,
  ) -> ivy.Array:
      """ivy.Array instance method variant of ivy.unfold. This method simply
      wraps the function, and so the docstring for ivy.unfold also applies to
      this method with minimal changes.
  
      Parameters
      ----------
      self
          input tensor to be unfolded
      mode
          indexing starts at 0, therefore mode is in ``range(0, tensor.ndim)``
      out
          optional output array, for writing the result to.
  
      Returns
      -------
      ret
          unfolded_tensor of shape ``(tensor.shape[mode], -1)``
      """
      return ivy.unfold(self._data, mode, out=out)
  
imports: import abc
  from typing import Optional, Union, Sequence, Tuple, List, Iterable, Callable, Literal, Any
  from numbers import Number
  import ivy
  from ivy import handle_view
label_desc: Use image node_id 28 for calling the _ArrayWithManipulationExperimental obj's underlying member method code with example usage: obj.unfold(mode) and returns: ivy