docstr: ivy.Array instance method variant of ivy.moveaxis. This method
  simply wraps the function, and so the docstring for ivy.unstack also
  applies to this method with minimal changes.
  
  Parameters
  ----------
  a
      The array whose axes should be reordered.
  source
      Original positions of the axes to move. These must be unique.
  destination
      Destination positions for each of the original axes.
      These must also be unique.
  copy
      boolean indicating whether or not to copy the input array.
      If True, the function must always copy.
      If False, the function must never copy.
      In case copy is False we avoid copying by returning a view
       of the input array.
  out
      optional output array, for writing the result to.
  
  Returns
  -------
  ret
      Array with moved axes. This array is a view of the input array.
  
  Examples
  --------
  >>> x = ivy.zeros((3, 4, 5))
  >>> x.moveaxis(0, -1).shape
  (4, 5, 3)
  >>> x.moveaxis(-1, 0).shape
  (5, 3, 4)
code: def moveaxis(
      self: ivy.Array,
      source: Union[int, Sequence[int]],
      destination: Union[int, Sequence[int]],
      /,
      *,
      copy: Optional[bool] = None,
      out: Optional[ivy.Array] = None,
  ) -> ivy.Array:
      """ivy.Array instance method variant of ivy.moveaxis. This method
      simply wraps the function, and so the docstring for ivy.unstack also
      applies to this method with minimal changes.
  
      Parameters
      ----------
      a
          The array whose axes should be reordered.
      source
          Original positions of the axes to move. These must be unique.
      destination
          Destination positions for each of the original axes.
          These must also be unique.
      copy
          boolean indicating whether or not to copy the input array.
          If True, the function must always copy.
          If False, the function must never copy.
          In case copy is False we avoid copying by returning a view
           of the input array.
      out
          optional output array, for writing the result to.
  
      Returns
      -------
      ret
          Array with moved axes. This array is a view of the input array.
  
      Examples
      --------
      >>> x = ivy.zeros((3, 4, 5))
      >>> x.moveaxis(0, -1).shape
      (4, 5, 3)
      >>> x.moveaxis(-1, 0).shape
      (5, 3, 4)
      """
      return ivy.moveaxis(
          self._data, source, destination, copy=copy, 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 1 for calling the _ArrayWithManipulationExperimental obj's underlying member method code with example usage: obj.moveaxis() and returns: ivy